import 'package:flutter/material.dart'; import 'package:tetrisdual/provider/data.dart'; class Board { static Container activePlayer(Widget playerBoard, bool active) { Color borderColor = active ? Colors.greenAccent : Colors.blueGrey; return Container( decoration: BoxDecoration( border: Border.all( color: borderColor, width: 15, ), ), child: playerBoard, ); } static Container buildGameBoard(Data myProvider, double boardWidth) { Widget player1 = new RotatedBox( quarterTurns: 2, child: myProvider.getPlayer(1).buildPlayerBoard(myProvider, boardWidth), ); Widget player2 = myProvider.getPlayer(2).buildPlayerBoard(myProvider, boardWidth); Widget togglePlayerWidget = GestureDetector( onTapUp: (details) { myProvider.toggleCurrentPlayer(); myProvider.getPlayer(myProvider.currentPlayer).pickRandomTetrimino(); }, child: Text( '🔄', style: TextStyle( fontSize: 50, ), ), ); return Container( child: Column( mainAxisAlignment: MainAxisAlignment.spaceBetween, crossAxisAlignment: CrossAxisAlignment.center, children: [ activePlayer(player1, myProvider.currentPlayer == 1), togglePlayerWidget, activePlayer(player2, myProvider.currentPlayer == 2), ], ), ); } }