public class PlayerController : MonoBehaviour { public Stat money = new Stat("Money", 100.00); public Stat rentAccount = new Stat("Rent Account", 0); public Stat foodEnergy = new Stat("Food Energy", 0); public Stat restEnergy = new Stat("Rest Energy", 0); // bank public Stat bankAccount = new Stat("Bank Account", 0); // jobs public Stat job = new Stat("Unemployed", 0); // Knowledge for University Jobs public Stat literatureKnowledge = new Stat("LiteratureKnowledge", 0); public Stat mathematicsKnowledge = new Stat("MathematicsKnowledge", 0); public Stat computerScienceKnowledge = new Stat("ComputerScienceKnowledge", 0); // Knowledge for Factory Jobs public Stat electronicsKnowledge = new Stat("ElectronicsKnowledge", 0); public Stat roboticsKnowledge = new Stat("RoboticsKnowledge", 0); public Stat industrialDesignKnowledge = new Stat("IndustrialDesignKnowledge", 0); public Stat careerPoints = new Stat("careerPoints", 0); // Achievements - to WIN the game public Stat whealthAchievement = new Stat("whealthAchievement", 999999); public Stat educationAchievement = new Stat("educationAchievement", 999999); public Stat careerAchievement = new Stat("careerAchievement", 999999); public Stat happinessAchievement = new Stat("happinessAchievement", 999999); // Inventory items public Stat freezerItem = new Stat("Freezer Item", 400, 1); public Stat clothesItem = new Stat("Clothes Item", 200, 3); public Stat booksItem = new Stat("Books Item", 150, 2); public Stat tvItem = new Stat("Tv Item", 1500, 1); public Stat laptopItem = new Stat("Laptop Item", 3000, 1); private int _day; public int Clock; // Start is called before the first frame update void Start() { _moneyText.text = $"Money: {money.Value}$"; } // Update is called once per frame void Update() { } public void StartNewDay() { Clock = 24; } public bool TryBuyAction(BaseAction action) { if (action is ISellableItem) { if (!money.deduct(((ISellableItem)action).Cost)) return false; _moneyText.text = $"Money: {money.Value}$"; } action.ApplyAction(this); return true; } }