Exemplo n.º 1
0
 // Use this for initialization
 void Start()
 {
     rb   = this.gameObject.GetComponent <Rigidbody2D>();
     p2PC = p2.GetComponent <PaddleController>();
     StartCoroutine("velocity");
     speedIncrease = 0;
 }
Exemplo n.º 2
0
    public void paddleMovementInput(PaddleController paddle, float paddleMoveSpeed, int direction)
    {
        #if UNITY_ANDROID
        if(Input.touchCount == 1)// && Input.GetTouch(0).phase == TouchPhase.Moved)
        {
            Camera camera = tk2dCamera.Instance.ScreenCamera;
            float   fingerXPosition = camera.ScreenToWorldPoint(Input.GetTouch(0).position).x;
            Vector3 newPos = new Vector3(direction*fingerXPosition,paddle.transform.position.y,paddle.transform.position.z);

            paddle.transform.position = Vector3.Lerp(paddle.transform.position, newPos, Time.deltaTime*10);
        }
        #endif

        #if UNITY_STANDALONE
        Vector3 currentPosition = paddle.transform.position;
        paddle.currentMoveSpeed = paddleMoveSpeed;
        Camera camera = tk2dCamera.Instance.ScreenCamera;
        float mouseXPosition = camera.ScreenToWorldPoint(Input.mousePosition).x;
        Vector3 target = new Vector3( direction*mouseXPosition,currentPosition.y,currentPosition.z);
        paddle.transform.position = Vector3.Lerp( currentPosition, target, Time.deltaTime*10 );
        #endif

        #if UNITY_WEBPLAYER
        Vector3 currentPosition = paddle.transform.position;
        paddle.currentMoveSpeed = paddleMoveSpeed;
        Camera camera = tk2dCamera.Instance.ScreenCamera;
        float mouseXPosition = camera.ScreenToWorldPoint(Input.mousePosition).x;
        Vector3 target = new Vector3( direction*mouseXPosition,currentPosition.y,currentPosition.z);
        paddle.transform.position = Vector3.Lerp( currentPosition, target, Time.deltaTime*10 );
        #endif
    }
Exemplo n.º 3
0
 void Start()
 {
     theRB          = GetComponent <Rigidbody2D>();
     theRB.velocity = new Vector2(vertSpeed, vertSpeed);
     GM             = FindObjectOfType <GameManager>();
     paddle         = FindObjectOfType <PaddleController>();
 }
Exemplo n.º 4
0
    //throw ball when space bar is let go
    public void Throw()
    {
        float xVelocity = -10f;
        float yVelocity = 5f;

        if (_paddle.transform.position.x < 0f)
        {
            xVelocity = -xVelocity;
        }
        var currentPosition = _paddle.transform.position / Time.deltaTime;

        print(paddleLastKnownPosition.y + " : " + currentPosition.y);
        if (paddleLastKnownPosition.y < currentPosition.y)
        {
            yVelocity = 5f;
        }
        else
        {
            yVelocity = -5f;
        }



        GetComponent <Rigidbody2D>().velocity = new Vector2(xVelocity, yVelocity);
        _paddle = null;
    }
Exemplo n.º 5
0
    public void paddleMovementInput(PaddleController paddle, float paddleMoveSpeed, int direction)
    {
                #if UNITY_ANDROID
        if (Input.touchCount == 1)       // && Input.GetTouch(0).phase == TouchPhase.Moved)
        {
            Camera  camera          = tk2dCamera.Instance.ScreenCamera;
            float   fingerXPosition = camera.ScreenToWorldPoint(Input.GetTouch(0).position).x;
            Vector3 newPos          = new Vector3(direction * fingerXPosition, paddle.transform.position.y, paddle.transform.position.z);

            paddle.transform.position = Vector3.Lerp(paddle.transform.position, newPos, Time.deltaTime * 10);
        }
                #endif

                #if UNITY_STANDALONE
        Vector3 currentPosition = paddle.transform.position;
        paddle.currentMoveSpeed = paddleMoveSpeed;
        Camera  camera         = tk2dCamera.Instance.ScreenCamera;
        float   mouseXPosition = camera.ScreenToWorldPoint(Input.mousePosition).x;
        Vector3 target         = new Vector3(direction * mouseXPosition, currentPosition.y, currentPosition.z);
        paddle.transform.position = Vector3.Lerp(currentPosition, target, Time.deltaTime * 10);
                #endif

                #if UNITY_WEBPLAYER
        Vector3 currentPosition = paddle.transform.position;
        paddle.currentMoveSpeed = paddleMoveSpeed;
        Camera  camera         = tk2dCamera.Instance.ScreenCamera;
        float   mouseXPosition = camera.ScreenToWorldPoint(Input.mousePosition).x;
        Vector3 target         = new Vector3(direction * mouseXPosition, currentPosition.y, currentPosition.z);
        paddle.transform.position = Vector3.Lerp(currentPosition, target, Time.deltaTime * 10);
                #endif
    }
Exemplo n.º 6
0
 void Start()
 {
     //The only way that I find out to access to the components is by tags or GameObject.Find...
     ball = GameObject.FindGameObjectWithTag("Ball").GetComponent <BallManager>();
     p1   = GameObject.FindGameObjectWithTag("Left").GetComponent <PaddleController>();
     p2   = GameObject.FindGameObjectWithTag("Right").GetComponent <PaddleController>();
 }
Exemplo n.º 7
0
 // Use this for initialization
 void Start()
 {
     paddle             = FindObjectOfType <PaddleController>();
     boing              = FindObjectOfType <AudioSource>();
     ball               = FindObjectOfType <Rigidbody2D>();
     paddleToBallVector = transform.position - paddle.transform.position;
 }
Exemplo n.º 8
0
    void OnTriggerEnter(Collider collider)
    {
        if (collider.gameObject.tag.Equals("Block"))
        {
            body.velocity = new Vector3(body.velocity.x * -1, body.velocity.y, body.velocity.z);

            if (collider.gameObject.GetComponent <BasicBlock>() is BasicBlock)
            {
                BasicBlock block = collider.gameObject.GetComponent <BasicBlock>();
                block.DecreaseToughness();

                if (block.getIsBreakable() && block.getToughness() == 0)
                {
                    PaddleController script = owner.GetComponent <PaddleController>();
                    script.IncreaseScore(block.getPoint());
                    Destroy(collider.gameObject);
                }
            }

            if (collider.gameObject.GetComponent <ToughBlock>() is ToughBlock)
            {
                ToughBlock block = collider.gameObject.GetComponent <ToughBlock>();
                block.DecreaseToughness();

                if (block.getIsBreakable() && block.getToughness() == 0)
                {
                    PaddleController script = owner.GetComponent <PaddleController>();
                    script.IncreaseScore(block.getPoint());
                    Destroy(collider.gameObject);
                }
            }
        }
    }
Exemplo n.º 9
0
 void Start()
 {
     theLevel      = FindObjectOfType <LevelController>();
     thePaddle     = FindObjectOfType <PaddleController>();
     myRigidbody   = GetComponent <Rigidbody2D>();
     startPosition = transform.position;
 }
Exemplo n.º 10
0
 void Awake()
 {
     if (instance == null)
     {
         instance = this;
     }
 }
Exemplo n.º 11
0
    IEnumerator ExecutePowerUpCoroutine()
    {
        paddle = GameObject.FindGameObjectWithTag("Paddle");
        PaddleController paddleController = paddle.GetComponent <PaddleController>();

        if (!paddleController.hasPowerUp)
        {
            Rigidbody2D rigidbody2D = GetComponent <Rigidbody2D>();
            rigidbody2D.velocity        = new Vector2(0, 0);
            rigidbody2D.gravityScale    = 0;
            paddleController.hasPowerUp = true;
            Vector3 baseSize = paddle.transform.localScale;
            float   paddleX  = baseSize.x;
            paddle.transform.localScale    += new Vector3(paddleX, 0, 0);
            gameObject.transform.localScale = new Vector3(0, 0, 0);

            yield return(new WaitForSeconds(powerUpTime));

            paddle.transform.localScale = baseSize;
            paddleController.hasPowerUp = false;
            EndPowerUp();
        }
        else
        {
            Destroy(gameObject);
        }
    }
Exemplo n.º 12
0
    public override void OnStartLocalPlayer()
    {
        paddle = GetComponent <Paddle> ();

        PaddleController controller = GetComponent <PaddleController> ();

        controller.enabled = true;

        camera1 = GameObject.Find("Camera 1").GetComponent <Camera>();
        camera2 = GameObject.Find("Camera 2").GetComponent <Camera>();

        Vector3 tra = transform.position;

        if (transform.position.y > 0)
        {
            camera1.enabled    = false;
            camera2.enabled    = true;
            controller.inverse = true;
            CmdSetPlayerId(2);
            //			GetComponent<SpriteRenderer>().color = Color.blue;
        }
        else
        {
            camera1.enabled    = true;
            camera2.enabled    = false;
            controller.inverse = false;
            CmdSetPlayerId(1);
            //			GetComponent<SpriteRenderer>().color = Color.red;
        }
    }
Exemplo n.º 13
0
    // Use this for initialization
    void Start()
    {
        //if (!isServer) return;
        rigid      = GetComponent <Rigidbody2D> ();
        audioSound = GetComponent <AudioSource> ();

        //unFreeze player01
        player01   = GameObject.Find("Player01");
        unFreeze01 = player01.GetComponent <PaddleController> ();

        //unFreeze player02
        player02   = GameObject.Find("Player02");
        unFreeze02 = player02.GetComponent <PaddleController> ();

        //Random ball mental (left or right)
        randInt = Random.Range(0, 100);
        Debug.Log("random Int = " + randInt);
        if (randInt > 50)
        {
            direction = new Vector2(2, 0).normalized;
        }
        else
        {
            direction = new Vector2(-2, 0).normalized;
        }

        rigid.AddForce(direction * force);
        scoreP1   = 0;
        scoreP2   = 0;
        scoreUIP1 = GameObject.Find("Score1").GetComponent <Text> ();
        scoreUIP2 = GameObject.Find("Score2").GetComponent <Text> ();
        ballSpdUI = GameObject.Find("BallSpdTxt").GetComponent <Text> ();
        panelEnd  = GameObject.Find("PanelEnd");
        panelEnd.SetActive(false);
    }
Exemplo n.º 14
0
 // Use this for initialization
 void Start()
 {
     _paddle         = FindObjectOfType <PaddleController>();
     _offsetToPaddle = transform.position - _paddle.transform.position;
     _isLaunched     = false;
     _rb             = GetComponent <Rigidbody2D>();
 }
Exemplo n.º 15
0
    void OnJoinedRoom()
    {
        CurrentState = "READY!!";

        Debug.Log("We have Joined the Room!");

        if (!isPlayerTwo)
        {
            GameObject PlayerOnePaddle = PhotonNetwork.Instantiate("Paddle", new Vector3(0, -2.5f, -10), Quaternion.identity, 0);
            PlayerOnePaddle.name = "PlayerOnePaddle";
            PaddleController playerOneController = PlayerOnePaddle.GetComponent <PaddleController> ();
            playerOneController.IsForThisPlayer       = !isPlayerTwo;
            playerOneController.ThisPlayerIsPlayerTwo = false;
        }
        else
        {
            GameObject puck = PhotonNetwork.Instantiate("Puck", new Vector3(0, -2.5f, 0), Quaternion.identity, 0);

            GameObject PlayerTwoPaddle = PhotonNetwork.Instantiate("Paddle", new Vector3(0, -2.5f, 10), Quaternion.identity, 0);
            PlayerTwoPaddle.name = "PlayerTwoPaddle";
            var light = PlayerTwoPaddle.GetComponentInChildren <Light> ();
            light.color = Color.blue;

            PaddleController playerTwoController = PlayerTwoPaddle.GetComponent <PaddleController> ();
            playerTwoController.IsForThisPlayer       = isPlayerTwo;
            playerTwoController.ThisPlayerIsPlayerTwo = true;
        }
    }
Exemplo n.º 16
0
    public void Show(PaddleController player1, PaddleController player2, Action onClose)
    {
        gameObject.SetActive(true);

        if (player1.GoalsRemaining > 0)
        {
            _winText.text = "Player 1 Wins!";
        }
        else if (player2.GoalsRemaining > 0)
        {
            _winText.text = "Player 2 Wins!";
        }

        _gameOverText.transform.localScale = Vector3.zero;
        _winText.transform.localScale      = Vector3.zero;

        Sequence sequence = DOTween.Sequence();

        sequence.Append(_fadeInObject.DOFade(0, _fadeTime).From());
        sequence.Append(_gameOverText.transform.DOScale(Vector3.one, 0.5f).SetEase(Ease.OutBack));
        sequence.Append(_gameOverText.transform.DOMoveY(4, 1).SetRelative().SetEase(Ease.OutBack));
        sequence.Append(_winText.transform.DOScale(Vector3.one, 0.5f).SetEase(Ease.OutBack));
        sequence.AppendInterval(_delayBeforeClose);
        sequence.Append(_fadeInObject.DOFade(0, _fadeTime));
        sequence.Play().OnComplete(() =>
        {
            onClose?.Invoke();
            gameObject.SetActive(false);
        });
    }
 // Use this for initialization
 void Start()
 {
     paddle           = GameObject.Find("paddle");
     game             = GameObject.Find("Canvas");
     paddleController = paddle.GetComponent <PaddleController>();
     gameController   = game.GetComponent <GameController>();
 }
Exemplo n.º 18
0
    // Called before start
    public void Awake()
    {
        // Get the GameManager
        gameManager = FindObjectOfType <GameManager>();

        // Get the loading screen
        loadingScreenRef = FindObjectOfType <LoadingScreen>();

        // Get the button's audio source component
        clickedAudioSource = GetComponent <AudioSource>();

        // Get the main HUD manager
        mainHUDManager = FindObjectOfType <MainHUDManager>();

        // Get the player's paddle
        paddleRef = FindObjectOfType <PaddleController>();

        // Get the ball
        ballRef = FindObjectOfType <Ball>();

        // Get the point blocks in the level
        pointBlocks = FindObjectsOfType <PointBlock>();

        // Get the loading particle gameobject
        loadingParticle = GameObject.FindGameObjectWithTag("LoadingParticle");
    }
Exemplo n.º 19
0
 private void Start()
 {
     paddle = GameObject.FindGameObjectWithTag("Paddle");
     if (paddle)
     {
         paddleController = paddle.GetComponent <PaddleController>();
     }
 }
Exemplo n.º 20
0
 void Start()
 {
     Physics.IgnoreCollision(this.GetComponent <MeshCollider>(), GameObject.Find("NeutralZone").GetComponent <BoxCollider>());
     player1  = player1obj.GetComponent <PaddleController> ();
     player2  = player2obj.GetComponent <OpponentController> ();
     currZPos = transform.position.z;
     lastZPos = transform.position.z;
 }
Exemplo n.º 21
0
    void Start()
    {
        paddle    = GameObject.FindObjectOfType <PaddleController>();
        rigidBody = GetComponent <Rigidbody2D>();
        sprite    = GetComponent <SpriteRenderer>();

        ResetBall();
    }
Exemplo n.º 22
0
    // Use this for initialization
    void Start()
    {
        scoreText.text = "Score: " + score;
        livesText.text = "Lives: " + lives;

        ball   = GameObject.FindObjectOfType <BallController>();
        paddle = GameObject.FindObjectOfType <PaddleController>();
    }
Exemplo n.º 23
0
 public void BallSpeedUpRemove(PowerUpHandler controller)
 {
     PaddleController.MultiplyBallSpeed(0.625f);
     foreach (GameObject ball in PaddleController.ballList)
     {
         ball.GetComponent <BallController>().MultiplySpeed(0.625f); // 1/1.6 = 0.625
     }
 }
Exemplo n.º 24
0
 void InitializePaddle()
 {
     GameObject paddle = Instantiate(m_goPaddle) as GameObject;
     m_paddleCon = paddle.GetComponent<PaddleController>();
     m_paddleCon.MaxLeft = LeftBorder();
     m_paddleCon.MaxRight = RightBorder();
     m_paddleCon.Speed = paddleSpeed;
 }
Exemplo n.º 25
0
 public void BallSpeedDownRemove(PowerUpHandler controller)
 {
     PaddleController.MultiplyBallSpeed(1.6f);
     foreach (GameObject ball in PaddleController.ballList)
     {
         ball.GetComponent <BallController>().MultiplySpeed(1.6f);
     }
 }
Exemplo n.º 26
0
    public IEnumerator ApplyPowerUp(GameObject Other)
    {
        PaddleController Paddle = Other.GetComponent <PaddleController>();

        // If the other component alread has a power up destroy the power up now
        if (Paddle.HasPowerUp)
        {
            Destroy(gameObject);
            yield return(null);
        }

        //
        GetComponent <SpriteRenderer>().enabled = false;
        GetComponent <BoxCollider2D>().enabled  = false;

        switch (PowerUpType)
        {
        case Type.LARGE_PADDLE:
            Paddle.HasPowerUp          = true;
            Other.transform.localScale = new Vector3(100f, 200f);
            yield return(new WaitForSeconds(PowerUpTime));

            Paddle.HasPowerUp          = false;
            Other.transform.localScale = new Vector3(100f, 100f);
            break;

        case Type.MAGNETIC_PADDLE:
            Paddle.IsMagnetic = true;
            Paddle.HasPowerUp = true;
            Other.GetComponent <ColorModifier>().ModifierMode = ColorModifier.ColorMode.FIXED;
            Other.GetComponent <ColorModifier>().SetColor(new Color(1, 1, 1));
            yield return(new WaitForSeconds(PowerUpTime));

            Paddle.IsMagnetic = false;
            Paddle.HasPowerUp = false;
            GameObject.Find("Ball").GetComponent <BallComponent>().CurrentStatus = BallComponent.Status.Moving;
            Other.GetComponent <ColorModifier>().ModifierMode = ColorModifier.ColorMode.TIME_BASED;
            break;

        case Type.STRONG_BALL:
            BallComponent Ball      = GameObject.Find("Ball").GetComponent <BallComponent>();
            ColorModifier BallColor = GameObject.Find("Ball").GetComponent <ColorModifier>();

            Paddle.HasPowerUp      = true;
            Ball.isOnFire          = true;
            BallColor.ModifierMode = ColorModifier.ColorMode.FIXED;
            BallColor.SetColor(new Color(1f, 0f, 0f));
            yield return(new WaitForSeconds(PowerUpTime));

            Paddle.HasPowerUp      = false;
            BallColor.ModifierMode = ColorModifier.ColorMode.TIME_BASED;
            Ball.isOnFire          = false;
            break;
        }

        // Destroy the object
        Destroy(gameObject);
    }
Exemplo n.º 27
0
 void Start()
 {
     //finds the ball controller in the scene
     ball = FindObjectOfType <BallController>();
     //finds the paddle controller in the scene
     paddle = FindObjectOfType <PaddleController>();
     //grabs its own rigidbody
     GetComponent <Rigidbody2D>().velocity = Vector2.down * speed;
 }
Exemplo n.º 28
0
 void Start()
 {
     anim               = GetComponent <Animator>();
     myBody             = GetComponent <Rigidbody2D>();
     paddle             = GameObject.Find("Paddle");
     transform.position = new Vector2(paddle.transform.position.x + 0.4f, paddle.transform.position.y);
     paddleController   = FindObjectOfType <PaddleController>();
     cameraShake        = FindObjectOfType <CameraShake>();
 }
Exemplo n.º 29
0
 void Start()
 {
     thePaddle = FindObjectOfType <PaddleController>();
     theBall   = FindObjectOfType <BallController>();
     for (int i = 0; i < allBrick.Count; i++)
     {
         enableBrick.Add(allBrick[i]);
     }
 }
Exemplo n.º 30
0
    private void InitAiPaddle(PaddleController aiPaddle)
    {
        // This will provide an offset from the right side
        var aiPlayerOffset      = Vector3.right * -aiPaddle.transform.localScale.x;
        var centerRightPosition = new Vector3(this._topRightCornerPosition.x, 0, 0);
        var settings            = new PaddleInitializationSettings("PlayerPaddleInput", centerRightPosition, aiPlayerOffset, this._worldBoundaries);

        aiPaddle.InitializePaddle(settings);
    }
Exemplo n.º 31
0
    private void InitPlayerPaddle(PaddleController playerPaddle)
    {
        // This will provide an offset from the left side
        var leftPlayerOffset   = Vector3.right * playerPaddle.transform.localScale.x;
        var centerLeftPosition = new Vector3(this._bottomLeftCornerPosition.x, 0, 0);
        var settings           = new PaddleInitializationSettings("AiPaddleInput", centerLeftPosition, leftPlayerOffset, this._worldBoundaries);

        playerPaddle.InitializePaddle(settings);
    }
Exemplo n.º 32
0
    void Start()
    {
        GameBoard   = GameObject.FindGameObjectWithTag("GameBoard").GetComponent <HexGrid>();
        bubbleIndex = GameBoard.GetRandomBubbleIndex();
        Color bubbleColor = GameBoard.GetBubbleColor(bubbleIndex);

        Paddle = GameObject.FindGameObjectWithTag("Player").GetComponent <PaddleController>();
        Paddle.SetLineRendererColor(bubbleColor);
    }
    // Use this for initialization
    void Start()
    {
        _paddle = GameObject.Find("Paddle");
        _paddleController = _paddle.GetComponent<PaddleController>();

        _velocity = new Vector3(0, -0.05f, 0);
        if (gameObject.transform.position.y < _paddle.transform.position.y) {
            _velocity *= -1;
        }
    }
Exemplo n.º 34
0
    private IEnumerator startObjectEffect()
    {
        paddleController = (PaddleController) GameObject.Find(NameUtils.GO_PADDLE).GetComponent(typeof(PaddleController));
        paddleController.inverseDirection();
        paddleController.setPowerUp (modifierStr, gameObject);

        Vector3 positionBall = paddleController.transform.position;
        positionBall.z = -2;
        Quaternion rotationBall = paddleController.transform.rotation;
        rotationBall.x = 270;

        GameObject particleObject = Instantiate(particle, positionBall,
                                                Quaternion.Euler (rotationBall.x, rotationBall.y, rotationBall.z))
            as GameObject;
        particleObject.transform.parent = paddleController.transform;

        gameManager.setScoreModifier (modifierStr, scoreModifier);

        yield return StartCoroutine("waitSeconds");
    }
Exemplo n.º 35
0
    void Start()
    {
        inputManager = (InputManager)FindObjectOfType (typeof(InputManager));
        tickCount = 1;
        paddle = (PaddleController)FindObjectOfType (typeof(PaddleController));
        Vector3 pos = paddle.gameObject.transform.position;
        pos.y = pos.y + paddle.gameObject.transform.localScale.y / 4;
        transform.position = pos;

        setSpeedModifier(ScoreUtils.TIME_MODIFIER, 0.0f);
    }
 // Use this for initialization
 void Start()
 {
     currHealth = maxHealth;
     currPower = basePower;
     currArmor = baseArmor;
     //
     effectsList = new List<PlayerEffects>();
     paddleScript = this.GetComponent<PaddleController>();
     currentSkill = null;
 }
Exemplo n.º 37
0
 public void setPlayer(string name, PaddleController paddle)
 {
     playerName = name;
     playerPaddle = paddle;
 }
Exemplo n.º 38
0
 // Use this for initialization
 void Awake()
 {
     soundManager = FindObjectOfType<SoundManager>();
     paddleController = FindObjectOfType<PaddleController>();
 }
Exemplo n.º 39
0
    void Start()
    {
        _paused = false;
        _win = false;
        _lose = false;
        _mode3D = false;

        _score = 0;
        _pointsPerSec = 1;
        _multiplier = 1;
        _livesLeft = NUM_PLAYER_LIVES;
        _bricksRemaining = BRICK_NUM_COLS * BRICK_NUM_ROWS * 2;

        // init score text
        GameObject scoreText = GameObject.Find("Score Text");
        _scoreGUIText = scoreText.GetComponent<GUIText>();
        updateScoreText();

        // init lives text
        GameObject livesText = GameObject.Find("Lives Text");
        _livesGUIText = livesText.GetComponent<GUIText>();
        updateLivesText();

        // init multiplier text
        GameObject multiplierText = GameObject.Find("Multiplier Text");
        _multiplierGUIText = multiplierText.GetComponent<GUIText>();
        updateMultiplierText();

        // init ball reference
        _ballObject = GameObject.Find("Ball");
        _ballController = _ballObject.GetComponent<BallController>();

        // init paddle reference
        _paddleObject = GameObject.Find("Paddle");
        _paddleController = _paddleObject.GetComponent<PaddleController>();

        // init Win Loss message reference
        GameObject winLossText = GameObject.Find("Win Loss Text");
        _winLossGUIText = winLossText.GetComponent<GUIText>();
        _winLossGUIText.text = "";

        // init main and persp cameras
        Camera[] cams = Camera.allCameras;

        for (int i = 0; i < cams.Length; i++) {
            string camName = cams[i].gameObject.name;
            if (camName == "Main Camera") _mainCamera = cams[i];
            else if (camName == "Persp Camera") _perspCamera = cams[i];
        }

        // generate BrickPrefabs
        for (int i = 0; i < BRICK_NUM_COLS; i++) {
            for (int j = 0; j < BRICK_NUM_ROWS; j++) {

                GameObject brick = Instantiate(Resources.Load("BrickPrefab")) as GameObject;
                BoxCollider mainCollider = brick.GetComponent<BoxCollider>();

                float brickWidth = brick.transform.localScale.x * mainCollider.size.x;
                float brickHeight = brick.transform.localScale.y * mainCollider.size.y;

                Vector3 pos = new Vector3(5.4f, 9.4f, 0.0f);
                pos.x -= (brickWidth + BRICK_WIDTH_BUFFER_SPACE) * i;
                pos.y -= (brickHeight + BRICK_HEIGHT_BUFFER_SPACE) * j;

                brick.transform.position = pos;
            }
        }

        for (int i = 0; i < BRICK_NUM_COLS; i++) {
            for (int j = 0; j < BRICK_NUM_ROWS; j++) {

                GameObject brick = Instantiate(Resources.Load("BrickPrefab")) as GameObject;
                BoxCollider mainCollider = brick.GetComponent<BoxCollider>();

                float brickWidth = brick.transform.localScale.x * mainCollider.size.x;
                float brickHeight = brick.transform.localScale.y * mainCollider.size.y;

                Vector3 pos = new Vector3(5.4f, 4.0f, 0.0f);
                pos.x -= (brickWidth + BRICK_WIDTH_BUFFER_SPACE) * i;
                pos.y -= (brickHeight + BRICK_HEIGHT_BUFFER_SPACE) * j;

                brick.transform.position = pos;
            }
        }

        InvokeRepeating("multiplyMultiplier", 5, 5);
    }