Nesta aula implementaremos que após o término do jogo ocorrer, deverá ser traçado de alguma maneira os botões em linha, coluna ou diagonal que de fato finalizaram jogo. |
Foi criado um arquivo na pasta value com o nome color.xml.
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="red">#FF0000</color>
</resources>
package com.example.jogo;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
public class Main extends Activity {
//CONST DE CADA BOTAO
private final String QUADRADO = "quadrado";
private final String BOLA = "O";
private final String XIS = "X";
private String lastPlay = "X";
private View view;
int [][] estadoFinal = new int [][]{
{1,2,3},
{4,5,6},
{7,8,9},
{1,4,7},
{2,5,8},
{3,6,9},
{1,5,9},
{3,5,7},
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setView(getLayoutInflater().inflate(R.layout.main, null));
setContentView( getView());
}
public void clickquadrado(View v){
if (((Button)v).getText().equals( "" )){
if(getLastPlay().equals(XIS)){
((Button)v).setText( BOLA );
setLastPlay(BOLA);
}else{
((Button)v).setText( XIS );
setLastPlay(XIS);
}
}else{
Toast.makeText( getView().getContext(),"Escolha outro quadrado, esse est� ocupado!", Toast.LENGTH_LONG).show();
}
}
public Button getQuadrado(int tagNum){
return (Button)getView().findViewWithTag("QUADRADO"+tagNum);
}
public void newGame(View v){
setEnableQuadrado(true);
for(int i=1; i<=9; ++i){
if(getQuadrado(i)!=null){
getQuadrado(i).setText("");
}
}
}
public void setEnableQuadrado(boolean b){
for(int i=1; i<=9; ++i){
if(getQuadrado(i)!=null){
getQuadrado(i).setEnabled( b );
}
}
}
public void setColorQuadrados(int btn, int colorX){
getQuadrado(btn).setTextColor(getResources().getColor(colorX));
}
public void isFim(){
for(int x=0; x<=7; ++x){
String s1 = getQuadrado(estadoFinal[x][0]).getText().toString();
String s2 = getQuadrado(estadoFinal[x][1]).getText().toString();
String s3 = getQuadrado(estadoFinal[x][2]).getText().toString();
if ((!s1.equals(""))&&
(!s2.equals(""))&&
(!s3.equals(""))){
if(s1.equals(s2)&& s2.equals(s3)){
//pinta os botoes
setColorQuadrados(estadoFinal[x][0],R.color.red);
setColorQuadrados(estadoFinal[x][1],R.color.red);
setColorQuadrados(estadoFinal[x][2],R.color.red);
Toast.makeText(getView().getContext(),"Fim do jogo!", Toast.LENGTH_LONG).show();
}
}
}
}
public String getLastPlay() {
return lastPlay;
}
public void setLastPlay(String lastPlay) {
this.lastPlay = lastPlay;
}
public View getView() {
return view;
}
public void setView(View view) {
this.view = view;
}
}
Tags android, java, jogo, jogo da velha
Comentários
comments powered by Disqus