package com.example.cw.tictactoe;
import android.media.Image;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.GridLayout;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import org.w3c.dom.Text;
public class MainActivity extends AppCompatActivity {
//Yellow : 0 //Red : 1 //Empty : -1
int activePlayer = 0;
int[] blocks = {-1,-1,-1,-1,-1,-1,-1,-1,-1};
int[][] winningPositions = {{0,1,2},{3,4,5},{6,7,8},{0,3,6},{1,4,7},{2,5,8},{0,4,8},{2,4,6}};
boolean gameActive = true;
public void drop(View view)
{
ImageView currentImageView = (ImageView)view;
int matrixIndexClicked = Integer.parseInt(view.getTag().toString());
if(blocks[matrixIndexClicked]==-1 && gameActive)
{
currentImageView.setTranslationY(-1000);
if (activePlayer == 0) {
currentImageView.setImageResource(R.drawable.yellow);
blocks[matrixIndexClicked]=0;
activePlayer = 1;
} else {
currentImageView.setImageResource(R.drawable.red);
blocks[matrixIndexClicked]=1;
activePlayer = 0;
}
currentImageView.animate().translationYBy(1000).setDuration(500);
String winner = "";
for(int[] win:winningPositions)
{
if(blocks[win[0]]==blocks[win[1]] && blocks[win[1]]==blocks[win[2]] && blocks[win[0]]!=-1)
{
if (activePlayer==0)
{
winner = "Red";
}
else {
winner = "Yellow";
}
gameActive=false;
break;
}
}
if(gameActive)
{
for(int i:blocks) {
if (i == -1) {
gameActive = true;
break;
} else {
gameActive = false;
}
}
}
if(!gameActive)
{
TextView txt = (TextView)findViewById(R.id.textView);
Button bt = (Button)findViewById(R.id.button);
if(winner.length()<1)txt.setText("Game Draws");
else txt.setText(winner+" wins!");
bt.setVisibility(View.VISIBLE);
txt.setVisibility(View.VISIBLE);
}
}
}
public void playAgain(View view)
{
TextView txt = (TextView)findViewById(R.id.textView);
Button bt = (Button)findViewById(R.id.button);
bt.setVisibility(View.INVISIBLE);
txt.setVisibility(View.INVISIBLE);
activePlayer = 0;
for(int i=0;i<blocks.length;i++)
{
blocks[i]=-1;
}
gameActive = true;
GridLayout myGridView = (GridLayout)findViewById(R.id.gridLayout);
for(int i=0; i<myGridView.getChildCount(); i++) {
ImageView child = (ImageView)myGridView.getChildAt(i);
child.setImageDrawable(null);
}
}
@Override protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
If You Enjoyed This, Take 5 Seconds To Share It
0 comments:
Post a Comment