Exemplo n.º 1
0
    void LoadBallAnimPrefab(string prefabName, int index)
    {
        //Debug.Log ("creating ball " + " " + index);

        GameObject mathBallAnim = Instantiate(Resources.Load(prefabName, typeof(GameObject))) as GameObject;

        mathBallAnim.name = "mathBallAnim" + index;
        mathBallAnim.transform.position = new Vector3(0f, 20f, 0f);

        MathBallAnim _mathBallScript = mathBallAnim.GetComponent <MathBallAnim> ();

        _mathBallScript._state = MathBallAnim.eState.InPool;

        mathBallAnim.SetActive(false);
        setAllChildrenActive(mathBallAnim, false);

        BallAnimObjects.Add(mathBallAnim);


        //setBallColor(mathBallAnim, new Color(0.5f, 1f,1f, 0.5f));

        _mathBallScript.setBallColor(new Color(0.5f, 0.5f, 0.5f, 0.5f));
        _mathBallScript.setBallTextColor(new Color(1.0f, 1.0f, 1.0f, 1.0f));

        //WARNING! when you load a prefab at this point "void Start()" is still to be called and may overwrite anything you set here.
    }
Exemplo n.º 2
0
    void RemoveSelectedBalls()
    {
        foreach (GameObject gObj in BallObjects)
        {
            MathBall _mathBallScript = gObj.GetComponent <MathBall> ();
            if (_mathBallScript._state == MathBall.eState.Selected)
            {
                //setup anim ball
                GameObject _mathBallAnim = GetAvailableBallAnim();
                _mathBallAnim.transform.position   = new Vector3(gObj.transform.position.x, gObj.transform.position.y, -4);
                _mathBallAnim.transform.localScale = gObj.transform.localScale;

                int ball_value = _mathBallScript.ball_value;

                //use ball_value to select correct particle
                ParticleDepot.Instance.PlayAtPosition(ball_value, new Vector3(gObj.transform.position.x, gObj.transform.position.y, -5));
                MathBallAnim _mathBallAnimScript = _mathBallAnim.GetComponent <MathBallAnim> ();
                _mathBallAnimScript.setBallText(ball_value.ToString());
                _mathBallAnimScript.startAnim();

                _mathBallAnim.SetActive(true);
                setAllChildrenActive(_mathBallAnim, true);

                _mathBallAnimScript.setBallRemovalColors();


                //remove from bucket
                int spanx = UnityEngine.Random.Range(-1, 1);
                gObj.transform.position = new Vector3((float)spanx, 20f, 0f);
                gObj.SetActive(false);
                setAllChildrenActive(gObj, false);
                _mathBallScript.removeSelected();
            }
        }
    }
Exemplo n.º 3
0
 GameObject GetAvailableBallAnim()
 {
     foreach (GameObject gObj in BallAnimObjects)
     {
         MathBallAnim _mathBallAnimScript = gObj.GetComponent <MathBallAnim> ();
         if (_mathBallAnimScript._state == MathBallAnim.eState.InPool)
         {
             return(gObj);
         }
     }
     return(null);
 }