示例#1
0
    public void ArmorUpgrade()
    {
        Debug.Log("UPGRADED ARMOR!");
        if (cubeToUpgrade != null && ArmorUpgrades.Count > 0)
        {
            ScoreSystem.Score -= CurrentArmorUpgrade.Cost;
            DestroyableObject desObj     = cubeToUpgrade.GetComponent <DestroyableObject>();
            ShootShots        shootShots = cubeToUpgrade.GetComponent <ShootShots>();

            //desObj.maxHealth += CurrentArmorUpgrade.modifier;
            //desObj.health = desObj.maxHealth;
            if (CurrentArmorUpgrade.upgradePrefab != null)
            {
                //Transform cube = GameObject.FindObjectOfType<PlayerCube>().transform;
                //cube.position = new Vector3(cube.position.x, cube.position.y + 0.2f, cube.position.z);
                GameObject upgradePrefab = PhotonNetwork.Instantiate("Armor/" + CurrentArmorUpgrade.upgradePrefab.name, cubeToUpgrade.transform.position, cubeToUpgrade.transform.rotation, 0);
                upgradePrefab.transform.parent = GameObject.FindObjectOfType <PlayerCube>().transform.Find("ArmorHolder").transform;
                Transform cube = GameObject.FindObjectOfType <PlayerCube>().transform;
                cube.position = new Vector3(cube.position.x, cube.position.y + 0.2f, cube.position.z);

                foreach (Transform child in upgradePrefab.transform)
                {
                    //child.gameObject.AddComponent<Rigidbody>();
                    //Rigidbody body = child.GetComponent<Rigidbody>();
                    //body.useGravity = false;
                    //body.mass = 10;
                    //child.position = new Vector3(child.position.x, child.position.y - 0.2f, child.position.z);
                    //body.isKinematic = false;
                }
            }
            int upgradeIndex = ArmorUpgrades.IndexOf(CurrentArmorUpgrade);
            ArmorUpgrades.RemoveAt(upgradeIndex);
        }
    }
示例#2
0
 public void SpeedUpgrade()
 {
     Debug.Log("UPGRADED SPEED!");
     if (cubeToUpgrade != null && SpeedUpgrades.Count > 0)
     {
         ScoreSystem.Score -= CurrentSpeedUpgrade.Cost;
         DestroyableObject desObj     = cubeToUpgrade.GetComponent <DestroyableObject>();
         ShootShots        shootShots = cubeToUpgrade.GetComponent <ShootShots>();
         cubeToUpgrade.speed += CurrentSpeedUpgrade.modifier;
         if (CurrentSpeedUpgrade.upgradePrefab != null)
         {
             GameObject upgradePrefab = PhotonNetwork.Instantiate("Armor/" + CurrentSpeedUpgrade.upgradePrefab.name, cubeToUpgrade.transform.position, cubeToUpgrade.transform.rotation, 0);
             upgradePrefab.transform.SetParent(cubeToUpgrade.transform);
         }
         int upgradeIndex = SpeedUpgrades.IndexOf(CurrentSpeedUpgrade);
         SpeedUpgrades.RemoveAt(upgradeIndex);
     }
 }