私はJavaのアンドロイド開発の初心者です。私はチックタックのつま先ゲームを作成しました。私はゲームのコードを完成させました。私はちょうどインストラクターからオンラインで学んでいるように、私はゲームの勝利条件について混乱しています。 これは、これはコードですゲームについて私は無知だ特定のコード誰でもチックタックトウの勝利条件について説明できますか?
//winning condition
//for(int [] winningPosition : winningPositions){
if(gameState[winningPosition[0]] == gameState[winningPosition[1]] &&
gameState[winningPosition[1]] == gameState[winningPosition[2]] &&
gameState[winningPosition[0]] != 2)
です。
public class MainActivity extends AppCompatActivity {
//0 = yellow , 1 = red;
int activePlayer = 0;
boolean gameIsActive = true;
//2 mean unplayed
int [] gameState = {2,2,2,2,2,2,2,2,2};
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}};
public void dropIn (View view) {
ImageView counter = (ImageView) view;
int tappedCounter = Integer.parseInt(counter.getTag().toString());
if (gameState[tappedCounter] == 2 && gameIsActive) {
gameState[tappedCounter] = activePlayer;
counter.setTranslationY(-1000f);
if (activePlayer == 0) {
counter.setImageResource(R.drawable.yellow);
activePlayer = 1;
} else {
counter.setImageResource(R.drawable.red);
activePlayer = 0;
}
counter.animate().translationYBy(1000f).rotation(360).setDuration(300);
for(int []winningPosition : winningPositions){
if(gameState[winningPosition[0]] == gameState[winningPosition[1]] &&
gameState[winningPosition[1]] == gameState[winningPosition[2]] &&
gameState[winningPosition[0]] != 2)
{
//Someone has won!
gameIsActive = false;
String winner = "Red";
if(gameState[winningPosition[0]] == 0){
winner = "Yellow";
}
LinearLayout layout = (LinearLayout) findViewById(R.id.playAgainLayout);
TextView winnerMessage = (TextView) findViewById(R.id.winnerMessage);
winnerMessage.setText(winner +" has won!");
layout.setVisibility(View.VISIBLE);
} else {
boolean gameIsOver = true;
for(int counterState : gameState){
if(counterState == 2) gameIsOver = false;
}
if(gameIsOver){
LinearLayout layout = (LinearLayout) findViewById(R.id.playAgainLayout);
TextView winnerMessage = (TextView) findViewById(R.id.winnerMessage);
winnerMessage.setText("It's a draw!");
layout.setVisibility(View.VISIBLE);
}
}
}
}
}
あなたはそれについて何のことがわかりませんか? – QBrute
だから何が問題なのですか? –
彼はTicTacToeのルールを要求しています...これはプログラミングに関する質問ではありません。 – Nathan