public void MajorActionCompleted(bool reload) { if (currentTime == TimeEnums.Evening) { //Disable major interactables. Probably should do this in their script. majorActionDone = true; } else { if (reload) { FadeToBlack(); } currentTime = TimeEnums.Evening; TextboxManager.GetInstance().UpdateDateTime(); foreach (IDayTimeChangeListener listener in dayTimeChangeListeners) { listener.DayTimeChange(currentDay, currentTime); } if (reload) { Invoke("FadeOutBlack", 0.5f); } } }
public void DayTimeChange(DayEnums newDay, TimeEnums newTime) { this.transform.position = schedule[newDay][newTime].pos.position; AddToDayTimeChange(newDay, newTime); if (newTime == TimeEnums.Morning && doMajorConvos) { Invoke("CheckConversation", 0.5f); } }
public void ResetSavedVars() { FadeToBlack(); DeleteSaveData(); currentTime = TimeEnums.Morning; currentDay = DayEnums.Monday; daysTillPerformance = 14; daysSoFar = 0; majorActionDone = false; Invoke("FadeOutBlack", 1f); }
public virtual bool LoadSaveData() { if (File.Exists(Application.persistentDataPath + savefile)) { BinaryFormatter format = new BinaryFormatter(); FileStream fs = File.Open(Application.persistentDataPath + savefile, FileMode.Open); LifeSimSaveData save = (LifeSimSaveData)format.Deserialize(fs); fs.Close(); currentDay = save.day; currentTime = save.time; majorActionDone = save.majorActionDone; daysSoFar = save.days; duoTutorial = save.duoTutorial; Debug.Log("Game loaded"); return(true); } return(false); }
/// <summary> /// 两个时间的差值,可以为秒,小时,天,分钟 /// </summary> /// <param name=\"Interval\">需要得到的时差方式</param> /// <param name=\"StartDate\">起始时间</param> /// <param name=\"EndDate\">结束时间</param> /// <returns></returns> public static long DateDiff(TimeEnums Interval, DateTime StartDate, DateTime EndDate) { long lngDateDiffValue = 0; System.TimeSpan TS = new System.TimeSpan(EndDate.Ticks - StartDate.Ticks); switch (Interval) { case TimeEnums.SECOND: lngDateDiffValue = (long)TS.TotalSeconds; break; case TimeEnums.MINUTE: lngDateDiffValue = (long)TS.TotalMinutes; break; case TimeEnums.HOUR: lngDateDiffValue = (long)TS.TotalHours; break; case TimeEnums.DAY: lngDateDiffValue = (long)TS.Days; break; case TimeEnums.WEEK: lngDateDiffValue = (long)(TS.Days / 7); break; case TimeEnums.MONTH: lngDateDiffValue = (long)(TS.Days / 30); break; case TimeEnums.QUARTER: lngDateDiffValue = (long)((TS.Days / 30) / 3); break; case TimeEnums.YEAR: lngDateDiffValue = (long)(TS.Days / 365); break; } return(lngDateDiffValue); }
private void Awake() { if (instance == null) { instance = this; interactableDict = new Dictionary <Transform, IInteractable>(); buttonDict = new Dictionary <Transform, IButton>(); } else { Destroy(this.gameObject); } if (!LoadSaveData()) { currentDay = DayEnums.Monday; currentTime = TimeEnums.Morning; majorActionDone = false; daysSoFar = 1; } dayTimeChangeListeners = new List <IDayTimeChangeListener>(); }
public abstract void AddToDayTimeChange(DayEnums newDay, TimeEnums newTime);
public void IncrementDay() { FadeToBlack(); switch (currentDay) { case DayEnums.Monday: currentDay = DayEnums.Tuesday; break; case DayEnums.Tuesday: currentDay = DayEnums.Wednesday; break; case DayEnums.Wednesday: currentDay = DayEnums.Thursday; break; case DayEnums.Thursday: currentDay = DayEnums.Friday; break; case DayEnums.Friday: currentDay = DayEnums.Saturday; break; case DayEnums.Saturday: currentDay = DayEnums.Sunday; break; case DayEnums.Sunday: currentDay = DayEnums.Monday; break; } currentTime = TimeEnums.Morning; majorActionDone = false; daysSoFar++; if (daysTillPerformance == 0) { daysTillPerformance = 1; } dayCountdown.text = "Days until performance: " + (daysTillPerformance - (daysSoFar % daysTillPerformance)); if (daysSoFar % daysTillPerformance == 0) { gradedPerformance = true; if (playerAvatar.GetComponent <PlayerManager>().trustDonna >= targetTrustLevel) { duoTrapeze = true; } foreach (IDayTimeChangeListener listener in dayTimeChangeListeners) { listener.PerformanceDay(); } } else { foreach (IDayTimeChangeListener listener in dayTimeChangeListeners) { listener.DayTimeChange(currentDay, currentTime); } } TextboxManager.GetInstance().UpdateDateTime(); Invoke("FadeOutBlack", 0.5f); }
public override void AddToDayTimeChange(DayEnums newDay, TimeEnums newTime) { yarnVars.SetValue("$DonnaInvitable", schedule[newDay][newTime].invitable); }