Inheritance: MonoBehaviour
Esempio n. 1
0
    // check if goal is reached and display level summary.
    void OnTriggerEnter2D(Collider2D other)
    {
        if (other.gameObject.name == "CarBody")
        {
            Timer.Finished();
            PlayerReset.SetLevelCompleted();

            MoneyLevelCompletedText.text = "COINS COLLECTED: " + MoneyPickup.GetEarnedLevelMoney();

            if (!PlayerValues.Player.UnlockedLevels.Contains(SceneManager.GetActiveScene().buildIndex))
            {
                PlayerValues.Player.money += 100;
                PlayerValues.Player.UnlockedLevels.Add(SceneManager.GetActiveScene().buildIndex);
                MoneyLevelCompletedText.text = "<color=lime>LEVEL COMPLETED FOR THE FIRST TIME!</color>\n\n <color=yellow>COIN BONUS:</color> <color=orange>100.</color>\n\n   <color=yellow>COINS COLLECTED:</color> <color=orange>" + (MoneyPickup.GetEarnedLevelMoney() + 100 + "</color>");
            }

            LevelCompletedCanvas.enabled = true;
            Destroy(MoneyText);

            Time.timeScale      = 0.1f;
            Time.fixedDeltaTime = 0.02f * Time.timeScale;

            LevelCompleted = true;
            SaveProgress(SceneManager.GetActiveScene().buildIndex);
        }
    }
Esempio n. 2
0
    //Save the earned money and the completed level if it's progress.
    public static void SaveProgress(int level)
    {
        PlayerValues.Player.money = MoneyPickup.GetTotalMoney();

        if (CheckProgress(level))
        {
            PlayerValues.Player.level = level;
        }

        SaveSystem.Save();
    }
Esempio n. 3
0
    protected void SpawnMoneyPickup()
    {
        int rangeValue = (int)Mathf.Sqrt(maxHealth);
        int moneyValue = Random.Range(rangeValue / 2, rangeValue * 2) * moneyValueMultiplier;

        if (moneyValue <= 0)
        {
            return;
        }
        GameObject  o           = Instantiate(moneyPickupPrefab, transform.position, Quaternion.identity) as GameObject;
        MoneyPickup moneyPickup = o.GetComponent <MoneyPickup>();

        moneyPickup.value = moneyValue;
        moneyPickup.Init(player);
    }
        private static void ShareTomeMoney(On.RoR2.MoneyPickup.orig_OnTriggerStay orig, MoneyPickup self,
                                           Collider other)
        {
            #region Sharedmoney

            if ((self.baseObject == null) || (!ShareSuite.MoneyIsShared.Value))
            {
                orig(self, other);
                return;
            }

            int amount;
            if (self.shouldScale)
            {
                amount = (int)(self.baseGoldReward * Mathf.Pow(Run.instance.difficultyCoefficient, 1.25f));
            }
            else
            {
                amount = self.baseGoldReward;
            }

            orig(self, other);

            if (self.GetFieldValue <bool>("alive"))
            {
                return;
            }

            // Collect reward from tome and put it into shared pool
            SharedMoneyValue += amount;

            if (!ShareSuite.MoneyScalarEnabled.Value ||
                !NetworkServer.active)
            {
                return;
            }
            AddToSharedMoneyValue(amount);

            #endregion
        }