using System; using System.Collections; using System.Collections.Generic; using System.Linq; using UnityEngine; public class GlobalBuffSystem : Singleton, ISavable { public int ClickAdder = 0; public float ClickTimeMultiplier = 1f; public float ClickMultiplier = 1f; public float globalMultiplier = 1f; public float GlobalMultiplier { get => globalMultiplier; set { globalMultiplier = value; print($"Global Multiplier: {value}"); } } public List GlobalBuffs = new(); public void Update() { GlobalBuffs.ForEach(g=>g.OnBeforeComputing()); } public void LateUpdate() { GlobalBuffs.ForEach(g=>g.OnAfterComputing()); } public string GetPath() { return this.GetPath(); } public void LoadData(Dictionary saveData) { ClickAdder = int.Parse(saveData.GetValueOrDefault("ClickAdder", "0")); ClickTimeMultiplier = float.Parse(saveData.GetValueOrDefault("ClickTimeMultiplier", "1")); ClickMultiplier = float.Parse(saveData.GetValueOrDefault("ClickMultiplier", "1")); GlobalMultiplier = float.Parse(saveData.GetValueOrDefault("GlobalMultiplier", "1")); } public Dictionary SaveData() { return new Dictionary() { ["ClickAdder"] = ClickAdder.ToString(), ["ClickTimeMultiplier"] = ClickTimeMultiplier.ToString(), ["ClickMultiplier"] = ClickMultiplier.ToString(), ["GlobalMultiplier"] = GlobalMultiplier.ToString(), }; } }