private void Start() { _gatesList = GetComponent <QuGatesList>(); _currentMovementColdDown = movementColdDown; SpawnNextQubit(); _board = new IBit[8, 16]; _initialBoard = _initialStateGenerator.getInitialBoard(_boardSize); for (int i = 0; i < _boardSize.x; i++) { for (int j = 0; j < _boardSize.y; j++) { if (_initialBoard[i, j] != null) { ClassicBit cBit = Instantiate(_instanciableClassicBit, _spawnPoint.position, _spawnPoint.rotation); cBit.value = _initialBoard[i, j].value; cBit.transform.position = cBit.transform.position + (Vector3.right * i); cBit.transform.position = cBit.transform.position - (Vector3.up * (_boardSize.y - j)); _board[i, j] = cBit; } } } winCanvas.gameObject.SetActive(false); }
public ClassicBit[,] getInitialBoard(Vector2Int boardSize) { ClassicBit[,] board = new ClassicBit[boardSize.x, boardSize.y]; rnd = new Random(); for (int i = 0; i < numClassicBits; i++) { Vector2Int randomCoord = calculateRandomCoord(boardSize); while (board[randomCoord.x, randomCoord.y] != null) { randomCoord = calculateRandomCoord(boardSize); } board[randomCoord.x, randomCoord.y] = new GameObject().AddComponent <ClassicBit>(); board[randomCoord.x, randomCoord.y].value = rnd.Next(0, 2) == 1; } return(board); }
private void Start() { classicBit = GetComponent <ClassicBit>(); }