public void processPlayerFire(int position) { int result = this.game.processMove(playerTurn, position); if (result == FIRE_BAD_FIRE) { topTV.setText("Cell already Selected. Please pick again"); return; } else { EnemyBoardFragment enemyBoardFragment = new EnemyBoardFragment(); FragmentManager fragmentManager = getFragmentManager(); FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); Context context = getApplicationContext(); if (playerTurn == 0) enemyBoardFragment = (EnemyBoardFragment) fragmentManager.findFragmentByTag("player1"); else enemyBoardFragment = (EnemyBoardFragment) fragmentManager.findFragmentByTag("player2"); enemyBoardFragment.fire(position, result); if (result == FIRE_MISS) { // it was a miss, switch turns playerTurn = Game.getOpposite(playerTurn); setPlayerNumberText(); topTV.setText("Sorry, you missed. Switching to " + playerNumberText + " Turn."); } else if (result == FIRE_HIT) { topTV.setText("You Hit the Enemy! Go Again."); } else if (result % FIRE_DESTROY_SHIP == 0) { topTV.setText("You Destroyed an Enemy Ship! Go Again."); int shipNumber = result / FIRE_DESTROY_SHIP - 1; switch (shipNumber) { case 0: smallShip.setImageDrawable(null); showSmallShip1 = false; break; case 1: submarine.setImageDrawable(null); showSub1 = false; break; case 2: destroyer.setImageDrawable(null); showDestroyer1 = false; break; case 3: aircraftCarrier.setImageDrawable(null); showAC1 = false; break; default: // should never reach here } } else if (result == FIRE_DESTROY_FLEET) { topTV.setText("YOU WIN!!!!!!!!!"); processWinner(playerTurn); } myHandler.postDelayed(changePlayers, 1000); } }
public void makeFragments() { FragmentManager fragmentManager = getFragmentManager(); FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); Context context = getApplicationContext(); Board player1Board = new Board(game.getPlayerBoard(PLAYER_PLAYER_NUMBER)); EnemyBoardFragment player1Fragment = EnemyBoardFragment.newInstance(player1Board); Board player2Board = new Board(game.getPlayerBoard(ENEMY_PLAYER_NUMBER)); EnemyBoardFragment player2Fragment = EnemyBoardFragment.newInstance(player2Board); ViewGroup mainContainer = (ViewGroup) findViewById(R.id.grid_holder); fragmentTransaction.add(R.id.grid_holder, player1Fragment, "player1"); fragmentTransaction.add(R.id.grid_holder, player2Fragment, "player2"); fragmentTransaction.commit(); fragmentManager.executePendingTransactions(); }