IEnumerator PayHomeless() { paying = true; yield return(new WaitForSeconds(Random.Range(minimumTimeToPay, minimumTimeToPay + 3))); /////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////// //// CODE TO GIVE MONEY STORED IN minimumToPay TO HOMELESS MAN //// /////////////////////////////////////////////////////////////////// ///// LEAVE IF TO ENSURE NPC IS STILL WATCHING HOMELESS MAN! ////// /////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////// if (staring) { float moneyToAdd = (Mathf.FloorToInt(Random.Range(minimumToPayPennies, maximumToPayPennies)) / 100.0f); CultureInfo gb = CultureInfo.GetCultureInfo("en-GB"); ChatLogger.SendChatMessage(PlayerName + " has given you " + moneyToAdd.ToString("c2", gb), Color.cyan); GameObject.FindGameObjectWithTag("Player").GetComponent <PlayerManager>().playerData.Money += moneyToAdd; //GameObject.Find("Money Text").GetComponent<Text>().text = (int.Parse(GameObject.Find("MoneyCounter").GetComponent<Text>().text) + Mathf.FloorToInt(Random.Range(minimumToPay, minimumToPay + 5))).ToString(); } paying = false; }
public void ShopItemBought(string name) { //var Player = GameObject.FindGameObjectWithTag("Player"); //Player.GetComponent<PlayerManager>(); var item = ShopItems.FirstOrDefault(i => i.ItemName == name); if (item.Cost <= GameObject.FindGameObjectWithTag("Player").GetComponent <PlayerManager>().playerData.Money) { if (item.ModifierList.All(i => CheckAddable(i))) { GameObject.FindGameObjectWithTag("Player").GetComponent <PlayerManager>().playerData.Money -= item.Cost; string change = ""; foreach (var modifier in item.ModifierList) { change += modifier.Key.ToString() + " " + (modifier.Value < 0 ? "decreased " : "increased ") + "by " + modifier.Value + " | "; AddStat(modifier); } change = change.TrimEnd('|', ' '); CultureInfo gb = CultureInfo.GetCultureInfo("en-GB"); string msg = item.ItemName + " purchased for " + item.Cost.ToString("c2", gb); ChatLogger.SendChatMessage(msg, Color.white); ChatLogger.SendChatMessage(change, Color.green); } } else { ChatLogger.SendChatMessage("You do not have enough money for this item", Color.red); } }
private void CheckLevelProgress() { if (playerData.Experience >= (playerData.Level * 120)) { playerData.Level++; playerData.Experience = 0; ChatLogger.SendChatMessage("Leveled Up! Now level " + playerData.Level, Color.magenta); } }
private void Start() { HungerBarProg = GameObject.Find("HungerBarProg").GetComponent <RawImage>(); ThirstBarProg = GameObject.Find("ThirstBarProg").GetComponent <RawImage>(); CleanBarProg = GameObject.Find("CleanlinessBarProg").GetComponent <RawImage>(); WarmthBarProg = GameObject.Find("WarmthBarProg").GetComponent <RawImage>(); MoraleBarProg = GameObject.Find("MoraleBarProg").GetComponent <RawImage>(); MoneyCounter = GameObject.Find("MoneyCounter").GetComponent <Text>(); playerData = SaveSystem.LoadPlayerData(); ChatLogger.SendChatMessage("Game Started, Good luck!", Color.yellow); AOEEffect = true; AOERange = 75; actionTimer = ScriptableObject.CreateInstance <PlayerAction>(); actionTimer.Init(15, true); }
private bool CheckAddable(KeyValuePair <StatType, float> modifier) { switch (modifier.Key) { case StatType.Hunger: var hungerval = GameObject.FindGameObjectWithTag("Player").GetComponent <PlayerManager>().playerData.Hunger + modifier.Value; if (hungerval <= 100 && hungerval > 0) { return(true); } else if (hungerval <= 0) { ChatLogger.SendChatMessage("You are too hungry for this item. (" + hungerval + "/100)", Color.red); return(false); } else { ChatLogger.SendChatMessage("You are not hungry enough to eat this item. (" + hungerval + "/100)", Color.red); return(false); } case StatType.Hydration: var hydrationval = GameObject.FindGameObjectWithTag("Player").GetComponent <PlayerManager>().playerData.Hydration + modifier.Value; if (hydrationval <= 100 && hydrationval > 0) { return(true); } else if (hydrationval <= 0) { ChatLogger.SendChatMessage("You are too thirsty for this item. (" + hydrationval + "/100)", Color.red); return(false); } else { ChatLogger.SendChatMessage("You are not thirsty enough to eat this item. (" + hydrationval + "/100)", Color.red); return(false); } case StatType.Warmth: var warmthval = GameObject.FindGameObjectWithTag("Player").GetComponent <PlayerManager>().playerData.Warmth + modifier.Value; if (warmthval <= 100 && warmthval > 0) { return(true); } else if (warmthval <= 0) { ChatLogger.SendChatMessage("You are too cold for this item. (" + warmthval + "/100)", Color.red); return(false); } else { ChatLogger.SendChatMessage("You are to hot right now. (" + warmthval + "/100)", Color.red); return(false); } case StatType.Cleanliness: var cleanlinessval = GameObject.FindGameObjectWithTag("Player").GetComponent <PlayerManager>().playerData.Cleanliness + modifier.Value; if (cleanlinessval <= 100 && cleanlinessval > 0) { return(true); } else if (cleanlinessval <= 0) { ChatLogger.SendChatMessage("You are too dirty for this item. (" + cleanlinessval + "/100)", Color.red); return(false); } else { ChatLogger.SendChatMessage("You do not fancy this right now. (" + cleanlinessval + "/100)", Color.red); return(false); } default: return(false); } }