o link do jogo da forca falhou… vou ter que mandar tudo zipado aqui… pera i… tem uma biblioteca para funcionar.
tem o Forca_1.java e o Ajuda.java
tem que criar estes dois arquivos juntos num projeto e
adicionar a biblioteca swing que vai junto no zip abaixo…
da para estudar um pouco da forca… este está sem imagens… ja fiz um com…
em todo caso, da para ver, como separa palavra, e coisas assim…
esta versao é mais antiga, mas funciona razoavelmente. valeu.
avisem o resultado. ok.
[quote=fshima]Seguinte,
Para separar a palavra em letras use split() e para verificar o tamanho da palavra o próprio length() te diz:
public class TrabalhandoComPalavras{
public static void main (String args[]) {
//palavra que vamos separar
String teste = "abcde";
//separando a palavra
String partes[] = teste.split("(?<=\G.{1})");
//imprimirá o tamanho da palavra
System.out.println("O tamanho da palavra " + teste + " é " + teste.length());
//imprimirá as letras uma por uma
for (String parte: partes) {
System.out.println(parte);
}
}
}
Obs: não testei mas deve funcionar.[/quote]
vlw brother deu certo!!
[quote]tem o Forca_1.java e o Ajuda.java
tem que criar estes dois arquivos juntos num projeto e
adicionar a biblioteca swing que vai junto no zip abaixo…
da para estudar um pouco da forca… este está sem imagens… ja fiz um com…
em todo caso, da para ver, como separa palavra, e coisas assim…
esta versao é mais antiga, mas funciona razoavelmente. valeu.
avisem o resultado. ok.[/quote]
blz! vou dar uma olhada
bom galera como tinha falado
aki vai o meu fonte
do adivinha numero
CLASS GAME
package Jogo;
public abstract class Game {
String nome;
String descricao;
public String getDescricao() {
return descricao;
}
public void setDescricao(String descricao) {
this.descricao = descricao;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public abstract void inicioJogo();
public abstract void executaJogo();
}
CLASS ADVNUMERO[code]
package Jogo;
import java.util.*;
public class AdvNumero extends Game {
Scanner entrada = new Scanner(System.in);
String cond = "";
private int num;
private int tentativa;
private int numTentativa;
private int i;
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
public int getTentativa() {
return tentativa;
}
public void setTentativa(int tentativa) {
this.tentativa = tentativa;
}
public int getNumTentativa() {
return numTentativa;
}
public void setNumTentativa(int numTentativa) {
this.numTentativa = numTentativa;
}
public int getI() {
return i;
}
public void setI(int i) {
this.i = i;
}
public void inicioJogo(){
System.out.println(" Início do jogo\n \n "
+ "Fácil (0 - 15) \n"
+ "Médio (0 - 30) \n"
+ "Díficil (0 - 50) \n");
System.out.println("\n \n Escolha uma opção");
i = entrada.nextInt();
do{
switch (i) {
case 1: num = (int)(1 + Math.random()*15);
System.out.println("Opção escolhida 'fácil'");
break;
case 2: num = (int)(1 + Math.random()*30);
System.out.println("Opção escolhida Média");
break;
case 3: num = (int)(1 + Math.random()*50);
System.out.println("Opção esclhida Difícil");
break;
default:
System.out.println("\n Opção Inválida \n"
+ "Por favor Escolha uma Opção válida!!");
i = entrada.nextInt();
}
} while(i > 3);
executaJogo();
}
public void executaJogo(){
tentativa = 5;
numTentativa = 0;
do{
System.out.println("\n Você ainda tem " + tentativa + " tentativas");
System.out.println("Por fovor tente um número");
numTentativa = entrada.nextInt();
if (numTentativa == num){
System.out.println("Parabens!! Você Ganhou \n \n");
break;
}else if (numTentativa > num){
System.out.println("Número muito alto");
} else {
System.out.println("Número muito baixo");
}
tentativa--;
if (tentativa == 0) {
System.out.println("Você perdeukkkkkk");
}
} while(tentativa > 0);
System.out.println("Deseja continuar: \n "
+ "Escolha S para sim e N para sair");
do{
cond = entrada.nextLine();
if (cond.equals("s")){
inicioJogo();
break;} else if (cond.equals("n")){
System.out.println("fim de jogo");
System.exit(0);
} else {
System.out.println("Opção invalida \n ");
}
}while(true);
}
}
[/code]
CLASS TESTE[code]
package Jogo;
public class Teste {
public static void main(String[] args) {
AdvNumero jogo1 = new AdvNumero();
jogo1.inicioJogo();
}
}
[/code]
Bom galera é isso ai
deem uma olhada na minha logica
ai se tiver algo a melhorar me falem q concerteza vo melhorar!!
resolvi postar o codigo, para dares uma olhada, na logica da forca, e ver este trecho aí que falastes.
tambem segue as imagens que falei que nao estavam. elas estao funcionando. mas tem que instalar esta pasta IMAGENS, no diretorio. C.
aguardo comentarios. valeu.
[/code][code]/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package testesgeraisetc;
/*
* Forca.java
*
* Created on 6 de Agosto de 2009, 09:07
*/
import java.awt.event.KeyEvent;
import javax.swing.DefaultListModel;
import javax.swing.JList;
import javax.swing.JOptionPane;
import javax.swing.*;
/**
*
* @author raghyjose
*/
public class Forca_1 extends javax.swing.JFrame {
public double x = 0;
//palavras
String palavras[] = new String[0];
//para saber se na primeira vez, usou o botão...
boolean inicia = false;
//linha 540 esta palavra ja foi dita... quando houver...
// String valores[] = new String[10];
int c = -1;
//letras
DefaultListModel model = new DefaultListModel();
JList list = new JList(model);
//palavras ja usadas
DefaultListModel model2 = new DefaultListModel();
JList list2 = new JList(model2);
int letraDita = 0;
//hh é variavel do array palavras 2
int h = 0;
int erros = 0;
//int totalErros=20;
int realTotalErros = 20;
int tamanho = 0;
String palavraEscolhida = "";
//vitorias
int vitorias = 0;
//derrotas
int derrotas = 0;
//t e para aumentar o numero do array de palavras ditas
int t = 0;
int pos = 0;
int z = 0;
int i = 0;
boolean letraJaDita = false;
int pec3 = 0;
int pec4 = 0;
int pec2 = 0;
int pec = 0;
int lastX = 0;
int b = 1;
boolean palavraJaDita = false;
boolean espaco = false;
boolean animais = false;
boolean aleatorias = true;
boolean musica = false;
boolean objetos = false;
int d = -1;
ImageIcon f0 = new ImageIcon("C:/IMAGENS/forcadesenho0.gif");
ImageIcon f1 = new ImageIcon("C:/IMAGENS/forcadesenho1.gif");
ImageIcon f2 = new ImageIcon("C:/IMAGENS/forcadesenho2.gif");
ImageIcon f3 = new ImageIcon("C:/IMAGENS/forcadesenho3.gif");
ImageIcon f4 = new ImageIcon("C:/IMAGENS/forcadesenho4.gif");
ImageIcon f5 = new ImageIcon("C:/IMAGENS/forcadesenho5.gif");
ImageIcon f6 = new ImageIcon("C:/IMAGENS/forcadesenho6.gif");
ImageIcon f7 = new ImageIcon("C:/IMAGENS/forcadesenho7.gif");
ImageIcon f8 = new ImageIcon("C:/IMAGENS/forcadesenho8.gif");
ImageIcon f9 = new ImageIcon("C:/IMAGENS/forcadesenho9.gif");
ImageIcon f10 = new ImageIcon("C:/IMAGENS/forcadesenho10.gif");
ImageIcon f11 = new ImageIcon("C:/IMAGENS/forcadesenho11.gif");
ImageIcon f12 = new ImageIcon("C:/IMAGENS/forcadesenho12.gif");
ImageIcon f13 = new ImageIcon("C:/IMAGENS/forcadesenho13.gif");
ImageIcon f14 = new ImageIcon("C:/IMAGENS/forcadesenho14.gif");
ImageIcon f15 = new ImageIcon("C:/IMAGENS/forcadesenho15.gif");
ImageIcon f16 = new ImageIcon("C:/IMAGENS/forcadesenho16.gif");
ImageIcon f17 = new ImageIcon("C:/IMAGENS/forcadesenho17a.gif");
ImageIcon f18 = new ImageIcon("C:/IMAGENS/forcadesenho18a.gif");
ImageIcon f19 = new ImageIcon("C:/IMAGENS/forcadesenho19a.gif");
ImageIcon f20 = new ImageIcon("C:/IMAGENS/forcadesenho20a.gif");
public Forca_1() {
initComponents();
setLocationRelativeTo(null);
inicia();
}
String letra = "";
String palavraCerta2 = "";
public void derrotaVitorias() {
//determina a derrota
if (realTotalErros == 0) {
jLabel3.setText("A palavra era : " + palavraEscolhida);
JOptionPane.showMessageDialog(null, "VOCE PERDEU 20 VEZES! ", "PERDEU !!!", JOptionPane.INFORMATION_MESSAGE);
erros = 0;
realTotalErros = 20;
letra = "";
//conta derrotas
derrotas = derrotas + 1;
jLderrotas.setText("Derrotas: " + derrotas);
//rotina para começar sozinho
recomeco();
}// fechar o derrota...
acertaPalavra();
//aqui determina a vitoria
if (palavraCerta2.equals(palavraEscolhida)) {
jLabel3.setText("Voce acertou a palavra : " + palavraEscolhida);
JOptionPane.showMessageDialog(null, "A palavra esta certa: " + palavraEscolhida + "", "Vc ganhou !!!", JOptionPane.INFORMATION_MESSAGE);
//vitorias e palavras ditas
vitorias = vitorias + 1;
jLvitorias.setText("Vitorias : " + vitorias);
recomeco();
}
}
public void inicia() {
inicia = true;
if (realTotalErros == 0) {
jLErrou.setIcon(f20);
}
verificaCategoria();
int laco3 = 0;
while (laco3 == 0) {
x = Math.random() * palavras.length;
b = (int) x;
palavraEscolhida = palavras[b];
tamanho = palavras[b].length();
jLTamanho.setText("a palavra escolhida tem " + tamanho + " letras");
if (model2.contains(palavraEscolhida)) {
palavraJaDita = true;
} else {
d = d + 1;
model2.add(d, palavraEscolhida);
laco3 = 1;
}
}
tamanhos();
}
public void principal(){
//continua tudo...
if (inicia == true) {
//colocar exceção para textfield nulo
jTletra.requestFocus();
//captura a letra digitada
String letraQualquer = jTletra.getText();
//poe letras para minusculo
letra = letraQualquer.toLowerCase();
//capturada nao precisa mais, vinha do getText()
String palavraEscolhidaCapturada = palavraEscolhida;
pec = palavraEscolhidaCapturada.indexOf(letra);
//acerta o valor porque array começa com zero
pec2 = pec + 1;
//no caso de duas ocorrencias, captura o ultimo index...
pec3 = palavraEscolhidaCapturada.lastIndexOf(letra);
pec4 = pec3 + 1;
if (letra.equals("") && !model.isEmpty() ) {
JOptionPane.showMessageDialog(null, "Espaco em branco!!", "Digite uma Letra", JOptionPane.INFORMATION_MESSAGE);
espaco = true;
pec2 = 0;
pec4 = 0;
//aqui vale para nao contar erro
letraJaDita = true;
}
//de novo quando começa, pega o espaço, entao tem que prevenir, para nao entrar na lista,
// e nao ...
if (letra.equals("") && model.isEmpty()) {
espaco = true;
JOptionPane.showMessageDialog(null, "Digite uma letra", "Digite uma Letra", JOptionPane.INFORMATION_MESSAGE);
jLlugarLetra.setText("");
//aqui vale para nao contar erro
letraJaDita = true;
}
if(letra.equals("")) {letra="_"; pec2=0; pec4=0; }
//teste para duas letras, nao valer. ok funcionou... nao vale duas letras.
if (letra.length() > 1) {
JOptionPane.showMessageDialog(null, "Somente uma letra.", "Digite uma Letra", JOptionPane.INFORMATION_MESSAGE);
espaco = true;
pec2 = 0;
pec4 = 0;
//aqui vale para nao contar erro
letraJaDita = true;
}
if (pec2 == pec4) {
jLlugarLetra.setText("A letra " + letra + " esta na posicao" + pec2);
} else {
jLlugarLetra.setText("A letra " + letra + " esta na posicao " + pec2 + " e " + pec4);
}
if (model.contains(letra) && (!letra.equals(""))) {
// && (!letra.equals(""))) { -se tiver dois espaços nao mostra letra ja dita.
JOptionPane.showMessageDialog(null, "Esta letra ja foi dita!", "Letra ja dita", JOptionPane.INFORMATION_MESSAGE);
jTletra.setText("");
letraJaDita = true;
} else if (!espaco==true) {
c = c + 1;
model.add(c, letra);
jLletrasDitas.setText("" + model + "");
jTletra.setText("");
letraJaDita = false;
}
//achar uma excecao caso a letra nao exista ou _____ -ERROS ____ ---
if (pec2 <= 0) {
jLlugarLetra.setText("A letra " + letra + " nao esta em posicao alguma");
//calcula as vezes em que houveram erros
//se a letra ja foi dita, nao conta como erro.
//ou seja se nao foi dita, conta erro.
if (letraJaDita == false) {
erros = erros + 1;
realTotalErros = realTotalErros - 1;
}
if (erros > 1) {
jLerros.setText("Voce ja errou " + erros + " vezes, pode errar mais " + realTotalErros);
} else { //so para o plural de erros , e vez..
jLerros.setText("Voce ja errou " + erros + " vez, pode errar mais " + realTotalErros);
}
}//FECHA O IF de ERROS
imagensErros();
letrasLugar();
derrotaVitorias();
if (model2.size() == palavras.length) {
JOptionPane.showMessageDialog(null, "Vc usou todas as palavras do jogo.", "Fim de Jogo", JOptionPane.INFORMATION_MESSAGE);
System.exit(0);
}
espaco = false;
}
}
public void aleatorias() {
palavras = new String[26];
palavras[0] = "casa";
palavras[1] = "agua";
palavras[2] = "carro";
palavras[3] = "chuva";
palavras[4] = "roupa";
palavras[5] = "moda";
palavras[6] = "rua";
palavras[7] = "lua";
palavras[8] = "fruto";
palavras[9] = "bola";
//palavras[10]="medida";
palavras[10] = "curva";
palavras[11] = "asa";
palavras[12] = "crime";
palavras[13] = "gol";
palavras[14] = "arma";
palavras[15] = "nadar";
palavras[16] = "jogar";
palavras[17] = "ativo";
palavras[18] = "vida";
palavras[19] = "ato";
palavras[20] = "seta";
palavras[21] = "meta";
palavras[22] = "reta";
palavras[23] = "cueca";
palavras[24] = "mesa";
palavras[25] = "quadro";
}
public void animais() {
palavras = new String[5];
palavras[0] = "cavalo";
palavras[1] = "coelho";
palavras[2] = "zebra";
palavras[3] = "coruja";
palavras[4] = "cobra";
//nao fiz para 3 letras iguais na palavra...
}
public void objetos() {
palavras = new String[5];
palavras[0] = "vaso";
palavras[1] = "jarro";
palavras[2] = "cadeira";
palavras[3] = "armario";
palavras[4] = "relogio";
}
public void musica() {
palavras = new String[5];
palavras[0] = "guitarra";
palavras[1] = "violao";
palavras[2] = "bateria";
palavras[3] = "flauta";
palavras[4] = "piano";
}
public void tamanhos() {
if (tamanho == 8) {
jTl4.setVisible(true);
jTl5.setVisible(true);
jTl6.setVisible(true);
jTl7.setVisible(true);
jTl8.setVisible(true);
}
if (tamanho == 7) {
jTl4.setVisible(true);
jTl5.setVisible(true);
jTl6.setVisible(true);
jTl7.setVisible(true);
jTl8.setVisible(false);
}
if (tamanho == 6) {
jTl4.setVisible(true);
jTl5.setVisible(true);
jTl6.setVisible(true);
jTl7.setVisible(false);
jTl8.setVisible(false);
}
if (tamanho == 5) {
jTl4.setVisible(true);
jTl5.setVisible(true);
jTl6.setVisible(false);
jTl7.setVisible(false);
jTl8.setVisible(false);
}
if (tamanho == 4) {
jTl6.setVisible(false);
jTl7.setVisible(false);
jTl5.setVisible(false);
jTl4.setVisible(true);
jTl8.setVisible(false);
}
if (tamanho == 3) {
jTl4.setVisible(false);
jTl5.setVisible(false);
jTl6.setVisible(false);
jTl7.setVisible(false);
jTl8.setVisible(false);
}
}
public void verificaCategoria() {
if (animais == true) {
//esvaziar o model para nao acabar o jogo se acabarem as palavras,
//ou nao acumular palavras de outras categorias no model...
//-1 no d, para acertar o array.
model2 = new DefaultListModel();
list2 = new JList(model2);
d=-1;
animais();
aleatorias = false;
objetos = false;
musica = false;
}
if (aleatorias == true) {
model2 = new DefaultListModel();
list2 = new JList(model2);
d=-1;
aleatorias();
animais = false;
objetos = false;
musica = false;
}
if (objetos == true) {
model2 = new DefaultListModel();
list2 = new JList(model2);
d=-1;
objetos();
animais = false;
aleatorias = false;
musica = false;
}
if (musica == true) {
model2 = new DefaultListModel();
list2 = new JList(model2);
d=-1;
musica();
animais = false;
aleatorias = false;
objetos = false;
}
}
public void imagensErros() {
if (realTotalErros == 20) {
jLErrou.setIcon(f0);
}
if (realTotalErros == 19) {
jLErrou.setIcon(f1);
}
if (realTotalErros == 18) {
jLErrou.setIcon(f2);
}
if (realTotalErros == 17) {
jLErrou.setIcon(f3);
}
if (realTotalErros == 16) {
jLErrou.setIcon(f4);
}
if (realTotalErros == 15) {
jLErrou.setIcon(f5);
}
if (realTotalErros == 14) {
jLErrou.setIcon(f6);
}
if (realTotalErros == 13) {
jLErrou.setIcon(f7);
}
if (realTotalErros == 12) {
jLErrou.setIcon(f8);
}
if (realTotalErros == 11) {
jLErrou.setIcon(f9);
}
if (realTotalErros == 10) {
jLErrou.setIcon(f10);
}
if (realTotalErros == 9) {
jLErrou.setIcon(f11);
}
if (realTotalErros == 8) {
jLErrou.setIcon(f12);
}
if (realTotalErros == 7) {
jLErrou.setIcon(f13);
}
if (realTotalErros == 6) {
jLErrou.setIcon(f14);
}
if (realTotalErros == 5) {
jLErrou.setIcon(f15);
}
if (realTotalErros == 4) {
jLErrou.setIcon(f16);
}
if (realTotalErros == 3) {
jLErrou.setIcon(f17);
}
if (realTotalErros == 2) {
jLErrou.setIcon(f18);
}
if (realTotalErros == 1) {
jLErrou.setIcon(f19);
}
if (realTotalErros == 0) {
jLErrou.setIcon(f20);
}
}
public void letrasLugar() {
//coloca letras certas no textfield
if (pec2 == 1) {
jTl1.setText(letra);
}
if (pec2 == 2) {
jTl2.setText(letra);
}
if (pec2 == 3) {
jTl3.setText(letra);
}
if (pec2 == 4) {
jTl4.setText(letra);
}
if (pec2 == 5) {
jTl5.setText(letra);
}
if (pec2 == 6) {
jTl6.setText(letra);
}
if (pec2 == 7) {
jTl7.setText(letra);
}if (pec2 == 8) {
jTl8.setText(letra);
}
// e no caso de duas ocorrencias da mesma letra...
if (pec4 == 1) {
jTl1.setText(letra);
}
if (pec4 == 2) {
jTl2.setText(letra);
}
if (pec4 == 3) {
jTl3.setText(letra);
}
if (pec4 == 4) {
jTl4.setText(letra);
}
if (pec4 == 5) {
jTl5.setText(letra);
}
if (pec4 == 6) {
jTl6.setText(letra);
}
if (pec4 == 7) {
jTl7.setText(letra);
}
if (pec4 ==8) {
jTl8.setText(letra);
}
pec3 = 0;
pec4 = 0;//para so mostrar se realmente houver o pac4, ou duas letras, ou seja o lastindexof...
}
public void recomeco() {
Object[] options2 = {"Sim", "Não"};
int confirmar2 = JOptionPane.showOptionDialog(null, "Deseja jogar novamente?", "Novo jogo", JOptionPane.DEFAULT_OPTION, JOptionPane.YES_OPTION, null, options2, options2[1]);
if (confirmar2 == 0) {
jTl1.setText("");
jTl2.setText("");
jTl3.setText("");
jTl4.setText("");
jTl5.setText("");
jTl6.setText("");
jTl7.setText("");
jTl8.setText("");
jLlugarLetra.setText("");
//zera a lista de letras ditas...
model = new DefaultListModel();
list = new JList(model);
model2 = new DefaultListModel();
list2 = new JList(model2);
c = -1;
jLletrasDitas.setText("" + model);
jLerros.setText("Voce ainda nao errou e pode errar 20 vezes.");
erros = 0;
realTotalErros = 20;
escolhePalavra();}
}
public void zeraModel() {
jTl1.setText("");
jTl2.setText("");
jTl3.setText("");
jTl4.setText("");
jTl5.setText("");
jTl6.setText("");
jTl7.setText("");
jTl8.setText("");
jLlugarLetra.setText("");
//zera a lista de letras ditas...
model = new DefaultListModel();
list = new JList(model);
c = -1;
jLletrasDitas.setText("" + model);
jLerros.setText("Voce ainda nao errou e pode errar 20 vezes.");
erros = 0;
realTotalErros = 20;
}
public void escolhePalavra(){
//escolhe palavra automaticamente...
verificaCategoria();
x = Math.random() * palavras.length;
b = (int) x;
// String b11 = String.valueOf(b);
palavraEscolhida = palavras[b];
tamanho = palavras[b].length();
jLTamanho.setText("a palavra escolhida tem " + tamanho + " letras");
int laco2 = 0;
while (laco2 == 0) {
if (model2.contains(palavraEscolhida)) {
x = Math.random() * palavras.length;
b = (int) x;
// b11 = String.valueOf(b);
palavraEscolhida = palavras[b];
tamanho = palavras[b].length();
jLTamanho.setText("a palavra escolhida tem " + tamanho + " letras");
//acho que posso tirar isto
palavraJaDita = false;
} else {
laco2 = laco2 + 1;
d = d + 1;
model2.add(d, palavraEscolhida);
}
tamanhos();
}//fecha o while com palavra escolhida
}
public void acertaPalavra() {
//acertar a palavra
String l1 = jTl1.getText();
String l2 = jTl2.getText();
String l3 = jTl3.getText();
String l4 = jTl4.getText();
String l5 = jTl5.getText();
String l6 = jTl6.getText();
String l7 = jTl7.getText();
String l8 = jTl8.getText();
palavraCerta2 = l1 + l2 + l3 + l4 + l5 + l6 + l7 + l8;
}
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jPanel1 = new javax.swing.JPanel();
jTletra = new javax.swing.JTextField();
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jLletrasDitas = new javax.swing.JLabel();
jBconfirmaPalavra = new javax.swing.JButton();
jLerros = new javax.swing.JLabel();
jLabel3 = new javax.swing.JLabel();
jPanel2 = new javax.swing.JPanel();
jLTamanho = new javax.swing.JLabel();
jBescolhePalavra = new javax.swing.JButton();
jLlugarLetra = new javax.swing.JLabel();
jTl1 = new javax.swing.JTextField();
jTl2 = new javax.swing.JTextField();
jTl3 = new javax.swing.JTextField();
jTl4 = new javax.swing.JTextField();
jTl5 = new javax.swing.JTextField();
jLpalavraCerta = new javax.swing.JLabel();
jLpalavraCerta2 = new javax.swing.JLabel();
jPanel4 = new javax.swing.JPanel();
jLvitorias = new javax.swing.JLabel();
jLderrotas = new javax.swing.JLabel();
jComboBox1 = new javax.swing.JComboBox();
jButton2 = new javax.swing.JButton();
jTl6 = new javax.swing.JTextField();
jTl7 = new javax.swing.JTextField();
jTl8 = new javax.swing.JTextField();
jPanel3 = new javax.swing.JPanel();
jLErrou = new javax.swing.JLabel();
jMenuBar1 = new javax.swing.JMenuBar();
jMenu1 = new javax.swing.JMenu();
jMenuItem1 = new javax.swing.JMenuItem();
jMenuItem2 = new javax.swing.JMenuItem();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setTitle("Jogo Da Forca");
jPanel1.setBackground(new java.awt.Color(153, 153, 255));
jPanel1.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
jTletra.setBackground(new java.awt.Color(204, 0, 204));
jTletra.setFont(new java.awt.Font("Tahoma", 0, 26));
jTletra.setDisabledTextColor(new java.awt.Color(153, 153, 0));
jTletra.setFocusCycleRoot(true);
jTletra.setFocusTraversalPolicyProvider(true);
jTletra.setSelectionColor(new java.awt.Color(153, 0, 255));
jTletra.addFocusListener(new java.awt.event.FocusAdapter() {
public void focusGained(java.awt.event.FocusEvent evt) {
jTletraFocusGained(evt);
}
});
jTletra.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyPressed(java.awt.event.KeyEvent evt) {
jTletraKeyPressed(evt);
}
});
jLabel1.setFont(new java.awt.Font("Tahoma", 0, 14));
jLabel1.setText("Digite uma letra:");
jLabel2.setFont(new java.awt.Font("Tahoma", 0, 14));
jLabel2.setText("Voce disse as seguintes letras ate agora:");
jLletrasDitas.setFont(new java.awt.Font("Tahoma", 0, 18));
jLletrasDitas.setForeground(new java.awt.Color(255, 0, 0));
jLletrasDitas.setText("_____nenhuma letra dita por enquanto_____");
jBconfirmaPalavra.setFont(new java.awt.Font("Tahoma", 0, 14));
jBconfirmaPalavra.setMnemonic(KeyEvent.VK_Z);
jBconfirmaPalavra.setText("confirma");
jBconfirmaPalavra.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jBconfirmaPalavraActionPerformed(evt);
}
});
jBconfirmaPalavra.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyPressed(java.awt.event.KeyEvent evt) {
jBconfirmaPalavraKeyPressed(evt);
}
});
jLerros.setFont(new java.awt.Font("Tahoma", 0, 14));
jLerros.setText("Voce ainda nao errou e pode errar 20 vezes.");
jLabel3.setText("A palavra era: ");
org.jdesktop.layout.GroupLayout jPanel1Layout = new org.jdesktop.layout.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jPanel1Layout.createSequentialGroup()
.add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jPanel1Layout.createSequentialGroup()
.add(29, 29, 29)
.add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
.add(jLerros)
.add(jPanel1Layout.createSequentialGroup()
.add(jLabel1)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED)
.add(jTletra, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 46, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(18, 18, 18)
.add(jBconfirmaPalavra, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 106, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)))
.add(50, 50, 50)
.add(jLletrasDitas))
.add(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.add(jLabel3, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 272, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(127, 127, 127)
.add(jLabel2)))
.addContainerGap(129, Short.MAX_VALUE))
);
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jPanel1Layout.createSequentialGroup()
.addContainerGap()
.add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
.add(jLabel3)
.add(jLabel2))
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jPanel1Layout.createSequentialGroup()
.add(7, 7, 7)
.add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(jLabel1)
.add(jTletra, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 37, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)))
.add(jPanel1Layout.createSequentialGroup()
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(jBconfirmaPalavra, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 42, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(jLletrasDitas))))
.add(30, 30, 30)
.add(jLerros)
.addContainerGap(45, Short.MAX_VALUE))
);
jPanel2.setBackground(new java.awt.Color(153, 153, 255));
jPanel2.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));
jPanel2.setEnabled(false);
jLTamanho.setFont(new java.awt.Font("Tahoma", 0, 14));
jLTamanho.setText("Mostra quantidade de letras da palavra");
jBescolhePalavra.setFont(new java.awt.Font("Tahoma", 0, 14));
jBescolhePalavra.setText("FORCA");
jBescolhePalavra.setEnabled(false);
jBescolhePalavra.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jBescolhePalavraActionPerformed(evt);
}
});
jLlugarLetra.setFont(new java.awt.Font("Tahoma", 0, 14));
jLlugarLetra.setText("Esta letra esta em _-_ lugar na palavra");
jTl1.setBackground(new java.awt.Color(204, 0, 204));
jTl1.setEditable(false);
jTl1.setFont(new java.awt.Font("Tahoma", 0, 26));
jTl2.setBackground(new java.awt.Color(204, 0, 204));
jTl2.setEditable(false);
jTl2.setFont(new java.awt.Font("Tahoma", 0, 26));
jTl3.setBackground(new java.awt.Color(204, 0, 204));
jTl3.setEditable(false);
jTl3.setFont(new java.awt.Font("Tahoma", 0, 26));
jTl4.setBackground(new java.awt.Color(204, 0, 204));
jTl4.setEditable(false);
jTl4.setFont(new java.awt.Font("Tahoma", 0, 26));
jTl5.setBackground(new java.awt.Color(204, 0, 204));
jTl5.setEditable(false);
jTl5.setFont(new java.awt.Font("Tahoma", 0, 26));
jLpalavraCerta2.setFont(new java.awt.Font("Tahoma", 0, 14));
jLpalavraCerta2.setText("Sera que vc acerta a palavra?");
jLvitorias.setFont(new java.awt.Font("Tahoma", 1, 13));
jLvitorias.setText("Vitorias: 0 ");
jLderrotas.setFont(new java.awt.Font("Tahoma", 1, 13));
jLderrotas.setText("Derrotas: 0");
org.jdesktop.layout.GroupLayout jPanel4Layout = new org.jdesktop.layout.GroupLayout(jPanel4);
jPanel4.setLayout(jPanel4Layout);
jPanel4Layout.setHorizontalGroup(
jPanel4Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jPanel4Layout.createSequentialGroup()
.addContainerGap()
.add(jPanel4Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING)
.add(jLvitorias)
.add(org.jdesktop.layout.GroupLayout.LEADING, jLderrotas))
.addContainerGap(15, Short.MAX_VALUE))
);
jPanel4Layout.setVerticalGroup(
jPanel4Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jPanel4Layout.createSequentialGroup()
.addContainerGap()
.add(jLvitorias, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jLderrotas)
.add(51, 51, 51))
);
jComboBox1.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "animais", "objetos", "musica", "aleatorias" }));
jComboBox1.setSelectedIndex(3);
jComboBox1.setSelectedItem(aleatorias);
jButton2.setText("Seleciona Categoria");
jButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton2ActionPerformed(evt);
}
});
jTl6.setBackground(new java.awt.Color(204, 0, 204));
jTl6.setEditable(false);
jTl6.setFont(new java.awt.Font("Tahoma", 0, 26));
jTl7.setBackground(new java.awt.Color(204, 0, 204));
jTl7.setEditable(false);
jTl7.setFont(new java.awt.Font("Tahoma", 0, 26));
jTl8.setBackground(new java.awt.Color(204, 0, 204));
jTl8.setEditable(false);
jTl8.setFont(new java.awt.Font("Tahoma", 0, 26));
org.jdesktop.layout.GroupLayout jPanel2Layout = new org.jdesktop.layout.GroupLayout(jPanel2);
jPanel2.setLayout(jPanel2Layout);
jPanel2Layout.setHorizontalGroup(
jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jPanel2Layout.createSequentialGroup()
.addContainerGap()
.add(jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jPanel2Layout.createSequentialGroup()
.add(jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jLpalavraCerta2)
.add(jPanel2Layout.createSequentialGroup()
.add(jTl1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 54, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jTl2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 27, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jTl3, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 28, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jTl4, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 27, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jTl5, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 30, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jTl6, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 30, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jTl7, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 30, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jTl8, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 30, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)))
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 212, Short.MAX_VALUE)
.add(jPanel4, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(48, 48, 48)
.add(jLpalavraCerta))
.add(jPanel2Layout.createSequentialGroup()
.add(jBescolhePalavra)
.add(18, 18, 18)
.add(jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jPanel2Layout.createSequentialGroup()
.add(jLTamanho)
.add(126, 126, 126)
.add(jComboBox1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 98, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(18, 18, 18)
.add(jButton2))
.add(jLlugarLetra))
.add(125, 125, 125))))
);
jPanel2Layout.linkSize(new java.awt.Component[] {jTl1, jTl2, jTl3, jTl4, jTl5, jTl6, jTl7, jTl8}, org.jdesktop.layout.GroupLayout.HORIZONTAL);
jPanel2Layout.setVerticalGroup(
jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jPanel2Layout.createSequentialGroup()
.add(jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jPanel2Layout.createSequentialGroup()
.add(jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jPanel2Layout.createSequentialGroup()
.add(54, 54, 54)
.add(jLpalavraCerta))
.add(jPanel2Layout.createSequentialGroup()
.add(37, 37, 37)
.add(jLpalavraCerta2)
.add(84, 84, 84)
.add(jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(jBescolhePalavra)
.add(jLlugarLetra)))
.add(jPanel2Layout.createSequentialGroup()
.add(72, 72, 72)
.add(jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE, false)
.add(jTl2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(jTl3, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(jTl4, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(jTl5, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(jTl1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 39, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(jTl6, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(jTl7, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(jTl8, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))))
.addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED)
.add(jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE)
.add(jLTamanho)
.add(jComboBox1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(jButton2)))
.add(jPanel2Layout.createSequentialGroup()
.addContainerGap()
.add(jPanel4, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)))
.addContainerGap(34, Short.MAX_VALUE))
);
jPanel2Layout.linkSize(new java.awt.Component[] {jTl1, jTl2, jTl3, jTl4, jTl5, jTl6, jTl7, jTl8}, org.jdesktop.layout.GroupLayout.VERTICAL);
jLErrou.setText("-");
org.jdesktop.layout.GroupLayout jPanel3Layout = new org.jdesktop.layout.GroupLayout(jPanel3);
jPanel3.setLayout(jPanel3Layout);
jPanel3Layout.setHorizontalGroup(
jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jPanel3Layout.createSequentialGroup()
.addContainerGap()
.add(jLErrou)
.addContainerGap(206, Short.MAX_VALUE))
);
jPanel3Layout.setVerticalGroup(
jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jPanel3Layout.createSequentialGroup()
.add(jLErrou)
.addContainerGap(376, Short.MAX_VALUE))
);
jMenu1.setText("Ajuda");
jMenu1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jMenu1ActionPerformed(evt);
}
});
jMenuItem1.setText("Instrucoes basicas");
jMenuItem1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jMenuItem1ActionPerformed(evt);
}
});
jMenu1.add(jMenuItem1);
jMenuItem2.setText("Sair do Jogo");
jMenuItem2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jMenuItem2ActionPerformed(evt);
}
});
jMenu1.add(jMenuItem2);
jMenuBar1.add(jMenu1);
setJMenuBar(jMenuBar1);
org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(layout.createSequentialGroup()
.addContainerGap()
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jPanel1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.add(jPanel2, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED)
.add(jPanel3, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(layout.createSequentialGroup()
.addContainerGap()
.add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING)
.add(jPanel3, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.add(layout.createSequentialGroup()
.add(7, 7, 7)
.add(jPanel2, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED)
.add(jPanel1, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)))
.addContainerGap(org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
pack();
}// </editor-fold>
private void jBconfirmaPalavraActionPerformed(java.awt.event.ActionEvent evt) {
if (inicia == true) {
principal();
}
}
private void jBconfirmaPalavraKeyPressed(java.awt.event.KeyEvent evt) {
//jBconfirmaPalavra=KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MASK,false);
}
private void jTletraKeyPressed(java.awt.event.KeyEvent evt) {
// TODO add your handling code here:
if (evt.getKeyCode() == 10) {
JOptionPane.showMessageDialog(null, "ENTER!", "Letra ja dita", JOptionPane.INFORMATION_MESSAGE);
}
}
public void keyReleased(KeyEvent e) {
}
public void keyTyped(KeyEvent e) {
}
private void jTletraFocusGained(java.awt.event.FocusEvent evt) {
// TODO add your handling code here:
}
private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {
Ajuda adCli = new Ajuda();
adCli.setVisible(true);
adCli.setLocationRelativeTo(null);
}
private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {
System.exit(0);
}
private void jMenu1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
int item = jComboBox1.getSelectedIndex();
System.out.println("combo:" + item);
if (item == 0) {
System.out.println("item1=animais");
animais = true;
aleatorias = false;
objetos = false;
musica = false;
}
if (item == 1) {
objetos = true;
aleatorias = false;
musica = false;
animais = false;
}
if (item == 2) {
musica = true;
aleatorias = false;
objetos = false;
animais = false;
}
if (item == 3) {
aleatorias = true;
objetos = false;
musica = false;
animais = false;
}
Object[] options3 = {"Sim", "Não"};
int confirmar3 = JOptionPane.showOptionDialog(null, "Escolher nova palavra desta categoria", "Nova categoria", JOptionPane.DEFAULT_OPTION, JOptionPane.YES_OPTION, null, options3, options3[1]);
if (confirmar3 == 0) {
zeraModel();
escolhePalavra(); //so difere do recomeco, porque nao pergunta se quer jogar de novo...
//e recomeço agora envolve o escolhe palavra separadamente por isto.
principal();
}
}
private void jBescolhePalavraActionPerformed(java.awt.event.ActionEvent evt) {
//para a primeira vez
//ve se botao 4 e 5 estao funcionando
}
public static void main(String args[]) {
//esolher palavra automatico
//escolhe palavra automaticamente...
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new Forca_1().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton jBconfirmaPalavra;
private javax.swing.JButton jBescolhePalavra;
private javax.swing.JButton jButton2;
private javax.swing.JComboBox jComboBox1;
private javax.swing.JLabel jLErrou;
private javax.swing.JLabel jLTamanho;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JLabel jLabel3;
private javax.swing.JLabel jLderrotas;
private javax.swing.JLabel jLerros;
private javax.swing.JLabel jLletrasDitas;
private javax.swing.JLabel jLlugarLetra;
private javax.swing.JLabel jLpalavraCerta;
private javax.swing.JLabel jLpalavraCerta2;
private javax.swing.JLabel jLvitorias;
private javax.swing.JMenu jMenu1;
private javax.swing.JMenuBar jMenuBar1;
private javax.swing.JMenuItem jMenuItem1;
private javax.swing.JMenuItem jMenuItem2;
private javax.swing.JPanel jPanel1;
private javax.swing.JPanel jPanel2;
private javax.swing.JPanel jPanel3;
private javax.swing.JPanel jPanel4;
private javax.swing.JTextField jTl1;
private javax.swing.JTextField jTl2;
private javax.swing.JTextField jTl3;
private javax.swing.JTextField jTl4;
private javax.swing.JTextField jTl5;
private javax.swing.JTextField jTl6;
private javax.swing.JTextField jTl7;
private javax.swing.JTextField jTl8;
private javax.swing.JTextField jTletra;
// End of variables declaration
}
as imagens ficaram com 513 kbytes, nao da de enviar, posso mandar por email… só mandar ou raghy@ig.com.br
está bacana, sim… sugiro algumas alterações…
antes olha só alguns resultados meus… acertei duas no dificil… hehe
run:
Início do jogo
Fácil (0 - 15)
Médio (0 - 30)
Díficil (0 - 50)
Escolha uma opção
3
Opção esclhida Difícil
Você ainda tem 5 tentativas
Por fovor tente um número
25
Número muito baixo
Você ainda tem 4 tentativas
Por fovor tente um número
40
Número muito alto
Você ainda tem 3 tentativas
Por fovor tente um número
35
Número muito alto
Você ainda tem 2 tentativas
Por fovor tente um número
30
Número muito baixo
Você ainda tem 1 tentativas
Por fovor tente um número
33
Número muito alto
Você perdeukkkkkk
o numero era 32
Deseja continuar:
Escolha S para sim e N para sair
Opção invalida
S
Opção invalida
Opção invalida
Opção invalida
s
Início do jogo
Fácil (0 - 15)
Médio (0 - 30)
Díficil (0 - 50)
Escolha uma opção
5
Opção Inválida
Por favor Escolha uma Opção válida!!
3
Você ainda tem 5 tentativas
Por fovor tente um número
25
Número muito baixo
Você ainda tem 4 tentativas
Por fovor tente um número
40
Número muito alto
Você ainda tem 3 tentativas
Por fovor tente um número
35
Número muito alto
Você ainda tem 2 tentativas
Por fovor tente um número
30
Número muito baixo
Você ainda tem 1 tentativas
Por fovor tente um número
32
Parabens!! Você Ganhou
Deseja continuar:
Escolha S para sim e N para sair
Opção invalida
s
Início do jogo
Fácil (0 - 15)
Médio (0 - 30)
Díficil (0 - 50)
Escolha uma opção
3
Opção esclhida Difícil
Você ainda tem 5 tentativas
Por fovor tente um número
40
Número muito baixo
Você ainda tem 4 tentativas
Por fovor tente um número
45
Número muito baixo
Você ainda tem 3 tentativas
Por fovor tente um número
48
Número muito baixo
Você ainda tem 2 tentativas
Por fovor tente um número
49
Parabens!! Você Ganhou
Deseja continuar:
Escolha S para sim e N para sair
Opção invalida
agora o seguinte, o que vc ja viu ali… acho que deves informar o numero certo, mesmo ou principalmente quando a pessoa perde…
aqui…
public void executaJogo(){
tentativa = 5;
numTentativa = 0;
do{
System.out.println("\n Você ainda tem " + tentativa + " tentativas");
System.out.println("Por fovor tente um número");
numTentativa = entrada.nextInt();
if (numTentativa == num){
System.out.println("Parabens!! Você Ganhou \n \n");
break;
}else if (numTentativa > num){
System.out.println("Número muito alto");
} else {
System.out.println("Número muito baixo");
}
tentativa--;
if (tentativa == 0) {
System.out.println("Você perdeukkkkkk");
System.out.println("o numero era "+num);
}
} while(tentativa > 0);
System.out.println("Deseja continuar: \n "
+ "Escolha S para sim e N para sair");
do{
cond = entrada.nextLine();
if (cond.equals("s")){
inicioJogo();
break;} else if (cond.equals("n")){
System.out.println("fim de jogo");
System.exit(0);
} else {
System.out.println("Opção invalida \n ");
}
}while(true);
}
}
tentativa–;
if (tentativa == 0) {
System.out.println(“Você perdeukkkkkk”);
System.out.println("o numero era "+num);
mais um jogo…
Escolha uma opção
3
Opção esclhida Difícil
Você ainda tem 5 tentativas
Por fovor tente um número
35
Número muito alto
Você ainda tem 4 tentativas
Por fovor tente um número
25
Número muito alto
Você ainda tem 3 tentativas
Por fovor tente um número
15
Número muito alto
Você ainda tem 2 tentativas
Por fovor tente um número
10
Número muito baixo
Você ainda tem 1 tentativas
Por fovor tente um número
12
Parabens!! Você Ganhou
Deseja continuar:
Escolha S para sim e N para sair
Opção invalida
hehe…
outra coisa. no inicio voce ja diz… ainda tem tantas tentativas… poderia haver uma diferença no inicio… para que nao diga, voce ainda tem, pois ele ainda nao jogo… ou
seja, no algoritmo. se for a primeira jogada, a frase é , voce tem cinco tentativas, depois passa a usar… voce ainda tem…
e o S maiusculo ou N tambem podiam ser aceitos, na hora do quer jogar de novo…
tambem podia contar as vitorias da pessoa, e as derrotas, no caso, por exemplo…
3 dicas boas para implementar… o que acha? vou ver se faço aqui…
gostei do jogo e dei uma "geral nele… " olha so…
segue o código…
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package jogodocolegagujadivinhar;
import java.util.*;
public class AdvNumero extends Game {
int acertos=0;
int derrotas=0;
int opcao=0;
Scanner entrada = new Scanner(System.in);
String cond = "";
private int num;
private int tentativa;
private int numTentativa;
private int i;
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
public int getTentativa() {
return tentativa;
}
public void setTentativa(int tentativa) {
this.tentativa = tentativa;
}
public int getNumTentativa() {
return numTentativa;
}
public void setNumTentativa(int numTentativa) {
this.numTentativa = numTentativa;
}
public int getI() {
return i;
}
public void setI(int i) {
this.i = i;
}
public void inicioJogo(){
System.out.println("Início do jogo\n \n"
+ "Fácil (0 - 15) \n"
+ "Médio (0 - 30) \n"
+ "Díficil (0 - 50) \n");
System.out.println("\n \nEscolha uma opção");
i = entrada.nextInt();
do{
switch (i) {
case 1: num = (int)(1 + Math.random()*15);
System.out.println("Opção escolhida 'fácil'");
opcao=1;
break;
case 2: num = (int)(1 + Math.random()*30);
System.out.println("Opção escolhida Média");
opcao=2;
break;
case 3: num = (int)(1 + Math.random()*50);
System.out.println("Opção esclhida Difícil");
opcao=3;
break;
default:
System.out.println("\n Opção Inválida \n"
+ "Por favor Escolha uma Opção válida!!");
i = entrada.nextInt();
}
} while(i > 3);
executaJogo();
}
public void executaJogo(){
tentativa = 5;
numTentativa = 0;
do{
if (tentativa==5) {
System.out.println("\nVocê tem " + tentativa + " tentativas para conseguir adivinhar!!! Boa Sorte! !! "); }
if (tentativa<5) {System.out.println("\nVocê ainda tem " + tentativa + " tentativas");}
if(opcao==1){ System.out.println("Por fovor tente um número de 0 a 15"); }
if(opcao==2){ System.out.println("Por fovor tente um número de 0 a 30"); }
if(opcao==3){ System.out.println("Por fovor tente um número de 0 a 50"); }
numTentativa = entrada.nextInt();
if (numTentativa == num){
acertos=acertos+1;
System.out.println("Parabens!! Você Ganhou \n \n");
//precisa zerar o opcao para a proxima escolha...
opcao=0;
//acertos e derrotas...
if (acertos==0) {System.out.println("voce nao ganhou nenhuma vez");}
if (acertos==1) {
System.out.println("voce ja ganhou "+acertos+" vez");
} else { System.out.println("voce ja ganhou "+acertos+" vezes");
}
if (derrotas==0) {System.out.println("voce nao perdeu nenhuma vez");}
if (derrotas==1) { System.out.println("voce ja perdeu "+derrotas+" vez");
}
break;
}else if (numTentativa > num){
System.out.println("Número muito alto");
} else {
System.out.println("Número muito baixo");
}
tentativa--;
if (tentativa == 0) {
derrotas=derrotas+1;
System.out.println("Você perdeukkkkkk");
System.out.println("o numero era "+num);
//precisa zerar o opcao para a proxima escolha...
opcao=0;
//acertos e derrotas...
if (acertos==0) {System.out.println("voce nao ganhou nenhuma vez");}
if (acertos==1) {
System.out.println("voce ja ganhou "+acertos+" vez");
} else { System.out.println("voce ja ganhou "+acertos+" vezes");
}
if (derrotas==0) {System.out.println("voce nao perdeu nenhuma vez");}
if (derrotas==1) {
System.out.println("voce ja perdeu "+derrotas+" vez");
}
}
}
while N(tentativa > 0);
System.out.println("___________________________________ ");
System.out.println("Deseja continuar: \n "
+ "Escolha S para sim e N para sair");
do{
cond = entrada.nextLine();
if ( (cond.equals("s") ) || (cond.equals("S")) ){
inicioJogo();
break;}
else if ( (cond.equals("n")) || (cond.equals("N")) ) {
System.out.println("fim de jogo");
System.exit(0);
}
}while(true);
}
}
um pouco das alterações:
para o S e N
do{
cond = entrada.nextLine();
if ( (cond.equals(“s”) ) || (cond.equals(“S”)) ){
inicioJogo();
break;} else if ( (cond.equals(“n”)) || (cond.equals(“N”)) ) {
System.out.println(“fim de jogo”);
System.exit(0);
} else {
System.out.println("Opção invalida \n ");
}
para a frase inicial de tentativa:
if (tentativa==5) {
System.out.println("\n Você tem " + tentativa + " tentativas para conseguir adivinhar!!! Boa Sorte! !! “); }
System.out.println(”\n Você ainda tem " + tentativa + " tentativas");
System.out.println(“Por fovor tente um número”);
declarei as variaveis la em cima:
int acertos=0;
int derrotas=0;
e aí conto lá e imprimo…
ainda fiz outras mudanças é só olhar o código…
faltou só a opção inválida, caso seja digitado algo que nao s ou S, n ou N…
era isso, dá uma resposta, aí, diga o que achou… valeu… 8)
vamos falar de jogos. é bacana…
quanto ao xadrez e damas, falado aqui, ja tentei. se alguem quiser fazer algo em source code, codigo aberto, pode ser interessante…
valeu. acho que ja falei que estava fazendo um general…
tem em www.gamedesire.com… yatzi… b
mas uma coisa, tirei a classe Game
e os get e setters… nao estao fazendo nada… a primeira vista, rapida…
o que acha disto?
inuteis a principio… nao há chamada para eles…
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
public int getTentativa() {
return tentativa;
}
public void setTentativa(int tentativa) {
this.tentativa = tentativa;
}
public int getNumTentativa() {
return numTentativa;
}
public void setNumTentativa(int numTentativa) {
this.numTentativa = numTentativa;
}
public int getI() {
return i;
}
public void setI(int i) {
this.i = i;
}
Gostei Bastante das idéias
inclusive algumas ja tinha visto e futuramente iria alterar!
agora enguanto a class GAME
em questão de uma verdadeira utilidade por enquanto ela ainda não tem
porém ele seria uma class abstrata com os metodos (inicioJogo() e executaJogo() ) sendo eles abstratos
pq essa classe advNumero irá ser herdeira dela juntamente com a do jogo da forca e batalha naval!
como ja foi falado esse é um projeto de escola então tenho q usar todos os conceitos de OO nele
inclusive Interface q não entendi direito ainda!!
futuramente tbm estarei implementando nele banco de dados
ai nele sim vai ter tipo um históricos do jogador com quantidade de vitorias derrotas e outros
obrigado pela as idéias. assim q tiver um tempo estarei mudando e postando aki
Vlws!!
[quote=raghy]mas uma coisa, tirei a classe Game
e os get e setters… nao estao fazendo nada… a primeira vista, rapida…
o que acha disto?
inuteis a principio… nao há chamada para eles…
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
public int getTentativa() {
return tentativa;
}
public void setTentativa(int tentativa) {
this.tentativa = tentativa;
}
public int getNumTentativa() {
return numTentativa;
}
public void setNumTentativa(int numTentativa) {
this.numTentativa = numTentativa;
}
public int getI() {
return i;
}
public void setI(int i) {
this.i = i;
}[/quote]
kra para dizer a verdade eu naum sei direito para q serve os metodos get e set
sei usar, porém não sei quando e pq usar!
até onde eu sei sempre q uso um private em uma variavel para eu ter acesso a elas
tanto para acrescentar dados (set) quanto para buscar aqueles dados (get)
porém como o meu acesso é feito direto na classe em q ela esta acho q é por isso
q não to precisando usar esse métodos… naum sei
flws
bem nao sei se percebeu, mas ja fiz uma série de alterações, as que eu citei por exemplo.
quando postei ali acima, que disse que fiz uma geral nele. da uma olhada, copia o codigo e rola ele, ja tem uma serie de alterações, as que falei. nao sei se percebeu[url]? ficou legal…
entendo que eles pedem para usar poo, mas de fato quando nao se usa isso, fica mais dificil mesmo. mas talvez depois cheguem lá… voce usaria os getIsso() ou setIsso(10), por exemplo… batalha naval, é bem legal. gostaria de acompanhar, se puder, seus avanços e novidades. gosto de jogos simples, como complexos…
falei para alguem aqui, para tentarmos fazer o xadrez juntos, que tal[/url]? j a comecei, posso procurar o que fiz e mandar, se houver interesse… falta só a movimentação das peças, em geral…
é parecido com o meu memoria… que está na minha página, conseguiu ver??
por enquanto é isso aí… vc falou do bingo, vi que os outros nao funcionaram pelo link, percebeu[url]? vou tentar arrumar la… qualquer coisa peça por aqui… é isso aí…
[quote]bem nao sei se percebeu, mas ja fiz uma série de alterações, as que eu citei por exemplo.
quando postei ali acima, que disse que fiz uma geral nele. da uma olhada, copia o codigo e rola ele, ja tem uma serie de alterações, as que falei. nao sei se percebeu[url]? ficou legal…
entendo que eles pedem para usar poo, mas de fato quando nao se usa isso, fica mais dificil mesmo. mas talvez depois cheguem lá… voce usaria os getIsso() ou setIsso(10), por exemplo… batalha naval, é bem legal. gostaria de acompanhar, se puder, seus avanços e novidades. gosto de jogos simples, como complexos…
falei para alguem aqui, para tentarmos fazer o xadrez juntos, que tal[/url]? j a comecei, posso procurar o que fiz e mandar, se houver interesse… falta só a movimentação das peças, em geral…
é parecido com o meu memoria… que está na minha página, conseguiu ver??
por enquanto é isso aí… vc falou do bingo, vi que os outros nao funcionaram pelo link, percebeu[url]? vou tentar arrumar la… qualquer coisa peça por aqui… é isso aí… [/quote]
vi as auterações… inclusive ja mudei meu projeto em mta coisa
hj ja dei uma boa geral nele
deixa fazer uma pergunta?
é possivel fazer algo assim?
String[] list;
if (getOpcao()==1){
list[] = {"maçã", "morango"....etc};
}
if (getOpcao()==2){
list[] = {"goiás", "Brasília", "sergipe", .....etc};
}
bom assim desse jeito sei q naum roda pq ja tentei
mas se tiver como fazer algo parecido como seria?
galera como faço uma matriz??
um tópico lá traz falei q tenho uma listFrut e uma outra com ListCidade
cada um com uns 15… 16 itens neles(naum sei ao certo)
String[] listFrut ={"manga", "laranja",...};
String[] listCidade = {"brasilia", "goias",...};
só q esses valores quero dentro de uma matriz(pelo menos acho q vai ficar melhor com uma matriz)
então fica mais prático anular logo essas array acima e criar uma matriz e add seus valores direto neles?
ou fazer um atribuição add os valores da minha array na matriz? se é q tem como!!
Galera por favor me deem um help ai
as minhas outras perguntas ninguem respondeu naum to conseguindo
na verdade to fazendo ja de outra forma
porém ainda ta dando erro
segue os codigos abaixo
Class game
package Jogo;
import java.util.*;
public abstract class Game {
String nome;
String descricao;
private int opcao;
Scanner entrada = new Scanner(System.in);
public String getDescricao() {
return descricao;
}
public void setDescricao(String descricao) {
this.descricao = descricao;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public int getOpcao() {
return opcao;
}
public void setOpcao(int opcao) {
this.opcao = opcao;
}
public void entradaOpcao(){
opcao = entrada.nextInt();
}
public int zeraOpcao(){
return opcao = 0;
}
public abstract void inicioJogo();
public abstract void executaJogo();
}
Class Jogo da forca
package Jogo;
import java.util.*;
public class JogoDaForca extends Game {
int qtdTentativas;
String[] qtdLetra;
String palavraSecreta;
String letraTantativas;
int indiceA, indiceB;
int i;
public void inicioJogo(){
System.out.println("Bem vindo ao Jogo Da Forca!!"
+ "\n \n 1 - Frutas"
+ "\n 2 - Localidades"
+ "\n 3 - Sair"
+ "\n Escolha uma das opções acima");
zeraOpcao();
entradaOpcao();
String[] listFrut = {"manga", "caju", "maça", "pessego", "caja", "jaca",
"abacaxi", "morango", "mamao", "melao", "figo", "acerola",
"banana", "abacate", "tomarindo", "goiaba",};
int qtdListFrut = listFrut.length;
String[] listLocalidade ={"goiania", "goianesia", "gama", "goias","maranhao",
"pernambuco", "brasilia", "brazlandia", "pariz", "brasil", "alemanha"
, "argentina", "salvador", "roma", "israel",};
int qtdListLocalidade = listLocalidade.length;
do{
if (getOpcao() == 1){
i = 0;
i = (int)(Math.random()*qtdListFrut);
palavraSecreta = listFrut[i];
System.out.println(palavraSecreta);
String[] qtdLetra = listFrut[i].split("(?<=\G.{1})");
System.out.println(qtdLetra);
} else if(getOpcao() == 2){
i = 0;
i = (int)(Math.random()*qtdListLocalidade);
palavraSecreta = listLocalidade[i];
System.out.println(palavraSecreta);
qtdLetra = listLocalidade[i].split("(?<=\G.{1})");
System.out.println(qtdLetra);
executaJogo();
} else if (getOpcao() == 3 ){
System.out.println("\n Jogo cancelado pel usuário");
System.exit(0);
} else{
System.out.println("Opção Inválida\n "
+ "Escolha uma opção válida\n");
entradaOpcao();
}
executaJogo();
} while(true);
}
public void executaJogo(){
int cont = 0;
if (qtdTentativas == 5){
System.out.println("Você possui 5 tentativas!! Boa sorte!!");
}else{
System.out.println("\n Você ainda tem " + qtdTentativas + " tentativas");
}
System.out.println("Tente acertar a Palavra secreta");
System.out.println();
while(cont <= qtdLetra.length){
System.out.print("- ");
}
inicioJogo();
}
}
Class teste
package Jogo;
public class TesteJogoDaForca {
public static void main(String[] args) {
JogoDaForca jogo1 = new JogoDaForca();
jogo1.inicioJogo();
}
}
na verdade até agora so to testando os dados q ele ta buscando
e conferindo se realmente está dando certo
coisa q naum está
abaixo vai o resultado q estou obtendo
Bem vindo ao Jogo Da Forca!!
1 - Frutas
2 - Localidades
3 - Sair
Escolha uma das opções acima
2
israel// palavra referente a minha array q tem um numero sorteado aleatoreamente de acordo com a quantidade de itens q tem minha array
[Ljava.lang.String;@16cd7d5 // essa parte era p estar a palavra dividada letra por letra
Você ainda tem 0 tentativas
Tente acertar a Palavra secreta
- - - - - - - - - - - - - - - - - - - - - - - - - // e aki era para ter "- " a msm quantidade de letras da minha palavra secreta
por favor me ajudem!!
era issu que você queria?
String[] qtdLetra = listFrut[i].split("(?<=\G.{1})");
StringBuilder strBuilder = new StringBuilder();
for(int x = 0; x < qtdLetra.length; x++){
strBuilder.append(qtdLetra[x]).append(" ");
}
System.out.println(strBuilder);
Cara achei bem legal esse jogo teu do BINGO, estou começando agora e espero em breve estar desenvolvendo desse jeito!
Abraços[/quote]
opa melhorei meu bingo, segue o site que tem o link para o bingo novo
ou neste link…
http://www.4shared.com/file/10H8ujBB/BINGO1111.html
o 7 jogos tb está um pouco diferente, dentro do site. vale rebaixar…
todos jogos e programas:
http://www.4shared.com/zip/QDKCwuuj/ultimos.html
e aí funcionando estes jogos…
seguem links atuais:
opa melhorei meu bingo, segue o site que tem o link para o bingo novo
ou neste link…
http://www.4shared.com/file/10H8ujBB/BINGO1111.html
o 7 jogos tb está um pouco diferente, dentro do site. vale rebaixar…
todos jogos e programas:
http://www.4shared.com/zip/QDKCwuuj/ultimos.html
[quote=stharley]Galera por favor me deem um help ai
por favor me ajudem!!
[/quote]
bem quer ver meu código do forca???
[quote=raghy][quote=stharley]Galera por favor me deem um help ai
por favor me ajudem!!
[/quote]
bem quer ver meu código do forca???[/quote]
Sim, Por favor
se tiver como pode me mandar por email: stharleymaxwell@hotmail.com
vlw… abraços