示例#1
0
    private void FlingTopping()
    {
        if (PizzaManager.SharedInstance.currentPizzaObject)
        {
            PizzaToppingUnifier NewTopping = ObjectPooler.SharedInstance.GetTopping(_playerRef.ActiveTopping);
            if (NewTopping != null)
            {
                float mod = GetFlingPower();

                Vector3 target   = PizzaManager.SharedInstance.currentPizzaObject.GetComponentInChildren <MeshCollider>().bounds.center - _playerRef.transform.position;
                Vector3 spawnPos = gameObject.transform.position + Random.onUnitSphere * 0.6f;
                NewTopping.transform.position = spawnPos;
                NewTopping.gameObject.SetActive(true);
                NewTopping.Rigidbody.AddForce(target.normalized * mod, ForceMode.VelocityChange);

                IncreaseFlingPower();
            }
        }
    }
示例#2
0
    // Update is called once per frame
    void Update()
    {
        if (Input.GetKeyDown(KeyCode.O))
        {
            //+1 topping
            currentTopping += 1;
            if ((int)currentTopping >= 11)
            {
                currentTopping -= 11;
            }
            Debug.Log("Current: " + currentTopping.ToString());
        }
        else if (Input.GetKeyDown(KeyCode.P))
        {
            //-1 topping
            currentTopping -= 1;
            if (currentTopping < 0)
            {
                currentTopping += 11;
            }
            Debug.Log("Current: " + currentTopping.ToString());
        }


        if (Input.GetKeyDown(KeyCode.Space))
        {
            //firetoppings
            PizzaToppingUnifier NewTopping = ObjectPooler.SharedInstance.GetTopping(currentTopping);
            if (NewTopping != null)
            {
                //for (int x = 0; x < 3; x++)
                {
                    Vector3 spawnPos = gameObject.transform.position + Random.onUnitSphere * 0.6f;
                    NewTopping.transform.position = spawnPos;
                    //NewTopping.transform.rotation = gameObject.transform.rotation;
                    NewTopping.gameObject.SetActive(true);
                    //NewTopping.GetComponent<Rigidbody>().AddForce(gameObject.transform.right * -7f, ForceMode.Impulse);
                    NewTopping.Rigidbody.AddForce(gameObject.transform.forward * Random.Range(minForce, maxForce), ForceMode.VelocityChange);
                }
            }
        }
    }
示例#3
0
    PizzaToppingUnifier OrderSpinach()
    {
        int objCounter = 0;

        if (spinach.Length > 1)
        {
            objCounter = Random.Range(0, spinach.Length);
        }
        else
        {
            objCounter = 0;
        }
        for (int i = 0; i < 10; i++)
        {
            GameObject obj = (GameObject)Instantiate(spinach[objCounter]);
            obj.transform.parent = gameObject.transform;
            PizzaToppingUnifier p = obj.GetComponent <PizzaToppingUnifier>();
            p.gameObject.SetActive(false);
            PooledSpinach.Add(p);
        }
        return(PooledSpinach[PooledSpinach.Count - 1]);
    }
示例#4
0
 PizzaToppingUnifier OrderSauce()
 {
     for (int i = 0; i < 10; i++)
     {
         int objCounter = 0;
         if (sauce.Length > 1)
         {
             objCounter = Random.Range(0, sauce.Length);
         }
         else
         {
             objCounter = 0;
         }
         GameObject obj = (GameObject)Instantiate(sauce[objCounter], gameObject.transform.position, Quaternion.Euler(-90f, 0f, 0f));
         obj.transform.parent = gameObject.transform;
         PizzaToppingUnifier p = obj.GetComponent <PizzaToppingUnifier>();
         //obj.transform.Rotate(Vector3.right, 90f);
         p.gameObject.SetActive(false);
         PooledSauce.Add(p);
     }
     return(PooledSauce[PooledSauce.Count - 1]);
 }
示例#5
0
    // Use this for initialization
    void Start()
    {
        if (sauce != null)
        {
            for (int i = 0; i < amountToPool; i++)
            {
                int objCounter = 0;
                if (sauce.Length > 1)
                {
                    objCounter = Random.Range(0, sauce.Length);
                }
                else
                {
                    objCounter = 0;
                }
                GameObject obj = (GameObject)Instantiate(sauce[objCounter], gameObject.transform.position, Quaternion.Euler(-90f, 0f, 0f));
                obj.transform.parent = gameObject.transform;
                PizzaToppingUnifier p = obj.GetComponent <PizzaToppingUnifier>();
                //obj.transform.Rotate(Vector3.right, 90f);
                p.gameObject.SetActive(false);
                PooledSauce.Add(p);
            }
        }

        if (cheese != null)
        {
            for (int i = 0; i < amountToPool; i++)
            {
                int objCounter = 0;
                if (cheese.Length > 1)
                {
                    objCounter = Random.Range(0, cheese.Length);
                }
                else
                {
                    objCounter = 0;
                }
                GameObject obj = (GameObject)Instantiate(cheese[objCounter], gameObject.transform.position, Quaternion.Euler(-90f, 0f, 0f));
                obj.transform.parent = gameObject.transform;
                PizzaToppingUnifier p = obj.GetComponent <PizzaToppingUnifier>();
                //obj.transform.Rotate(Vector3.right, 90f);
                p.gameObject.SetActive(false);
                PooledCheese.Add(p);
            }
        }

        if (pepperoni != null)
        {
            int objCounter = 0;
            if (pepperoni.Length > 1)
            {
                objCounter = Random.Range(0, pepperoni.Length);
            }
            else
            {
                objCounter = 0;
            }
            for (int i = 0; i < amountToPool; i++)
            {
                GameObject obj = (GameObject)Instantiate(pepperoni[objCounter]);
                obj.transform.parent = gameObject.transform;
                PizzaToppingUnifier p = obj.GetComponent <PizzaToppingUnifier>();
                p.gameObject.SetActive(false);
                PooledPepperoni.Add(p);
            }
        }

        if (bacon != null)
        {
            int objCounter = 0;
            if (bacon.Length > 1)
            {
                objCounter = Random.Range(0, bacon.Length);
            }
            else
            {
                objCounter = 0;
            }
            for (int i = 0; i < amountToPool; i++)
            {
                GameObject obj = (GameObject)Instantiate(bacon[objCounter]);
                obj.transform.parent = gameObject.transform;
                PizzaToppingUnifier p = obj.GetComponent <PizzaToppingUnifier>();
                p.gameObject.SetActive(false);
                PooledBacon.Add(p);
            }
        }

        if (anchovies != null)
        {
            int objCounter = 0;
            if (anchovies.Length > 1)
            {
                objCounter = Random.Range(0, anchovies.Length);
            }
            else
            {
                objCounter = 0;
            }
            for (int i = 0; i < amountToPool; i++)
            {
                GameObject obj = (GameObject)Instantiate(anchovies[objCounter]);
                obj.transform.parent = gameObject.transform;
                PizzaToppingUnifier p = obj.GetComponent <PizzaToppingUnifier>();
                p.gameObject.SetActive(false);
                PooledAnchovies.Add(p);
            }
        }

        if (greenpepper != null)
        {
            int objCounter = 0;
            if (greenpepper.Length > 1)
            {
                objCounter = Random.Range(0, greenpepper.Length);
            }
            else
            {
                objCounter = 0;
            }
            for (int i = 0; i < amountToPool; i++)
            {
                GameObject obj = (GameObject)Instantiate(greenpepper[objCounter]);
                obj.transform.parent = gameObject.transform;
                PizzaToppingUnifier p = obj.GetComponent <PizzaToppingUnifier>();
                p.gameObject.SetActive(false);
                PooledGreenPepper.Add(p);
            }
        }

        if (mushroom != null)
        {
            int objCounter = 0;
            if (mushroom.Length > 1)
            {
                objCounter = Random.Range(0, mushroom.Length);
            }
            else
            {
                objCounter = 0;
            }
            for (int i = 0; i < amountToPool; i++)
            {
                GameObject obj = (GameObject)Instantiate(mushroom[objCounter]);
                obj.transform.parent = gameObject.transform;
                PizzaToppingUnifier p = obj.GetComponent <PizzaToppingUnifier>();
                p.gameObject.SetActive(false);
                PooledMushroom.Add(p);
            }
        }

        if (hotpepper != null)
        {
            int objCounter = 0;
            if (hotpepper.Length > 1)
            {
                objCounter = Random.Range(0, hotpepper.Length);
            }
            else
            {
                objCounter = 0;
            }
            for (int i = 0; i < amountToPool; i++)
            {
                GameObject obj = (GameObject)Instantiate(hotpepper[objCounter]);
                obj.transform.parent = gameObject.transform;
                PizzaToppingUnifier p = obj.GetComponent <PizzaToppingUnifier>();
                p.gameObject.SetActive(false);
                PooledHotPepper.Add(p);
            }
        }

        if (pineapple != null)
        {
            int objCounter = 0;
            if (pineapple.Length > 1)
            {
                objCounter = Random.Range(0, pineapple.Length);
            }
            else
            {
                objCounter = 0;
            }
            for (int i = 0; i < amountToPool; i++)
            {
                GameObject obj = (GameObject)Instantiate(pineapple[objCounter]);
                obj.transform.parent = gameObject.transform;
                PizzaToppingUnifier p = obj.GetComponent <PizzaToppingUnifier>();
                p.gameObject.SetActive(false);
                PooledPineapple.Add(p);
            }
        }

        if (spinach != null)
        {
            int objCounter = 0;
            if (spinach.Length > 1)
            {
                objCounter = Random.Range(0, spinach.Length);
            }
            else
            {
                objCounter = 0;
            }
            for (int i = 0; i < amountToPool; i++)
            {
                GameObject obj = (GameObject)Instantiate(spinach[objCounter]);
                obj.transform.parent = gameObject.transform;
                PizzaToppingUnifier p = obj.GetComponent <PizzaToppingUnifier>();
                p.gameObject.SetActive(false);
                PooledSpinach.Add(p);
            }
        }
    }