/// <summary> /// This constructor for a TimeCard must include a start and an end time. /// </summary> /// <param name="startTime">Time shift began, valid range: 17:00 - 04:00</param> /// <param name="endTime">Time shift ended, valid range: 17:00 - 04:00, must come after <see cref="StartTime"/></param> public BabysitterTimeCard(TwentyFourHourTime startTime, TwentyFourHourTime endTime) { if (startTimeIsValid(startTime)) { _startTime = startTime; } _startTimePeriod = enumerateStartTimePeriod(); if (endTimeIsValid(endTime)) { _endTime = endTime; } }
private TwentyFourHourTime InitializeTime(TIME_OF_DAY tod, decimal hour, decimal minute) { switch (tod) { case TIME_OF_DAY.AM: return(InitializeAMTime(hour, minute)); case TIME_OF_DAY.PM: return(InitializePMTime(hour, minute)); default: throw new InvalidEnumArgumentException("No Time of Day Selected"); } }
private void RecalculateTime() { float minutesPassed = GetMinutesPassed(); currentDateAndTime = startingDateAndTime + new TimeSpan(0, (int)minutesPassed, 0); // Let see if it is sunrise or sunset TIME_OF_DAY currTimeOfDay = GameTime.GetTimeOfDay(); if(timeOfDay != currTimeOfDay) { timeOfDay = currTimeOfDay; switch(timeOfDay) { case TIME_OF_DAY.DAY: SendSetDay(); break; case TIME_OF_DAY.NIGHT: // We only trigger sunset if we haven't skipped over subset starting time too much if(sunsetHour == currentDateAndTime.Hour && currentDateAndTime.Minute < maxSkipAndSunset) { SendSetSunset(); } else { SendSetNight(); } break; default: Debug.LogError("GameTime.UpdateTime(): Unreconized TIME_OF_DAY"); break; } } }
/*********************************************************** * * OVERLOADED METHODS, from MonoBehaviour * ***********************************************************/ public void Awake() { //Debug.Log("GameTime.Awake()"); instance = this; persistentTime = new PersistentGameTime(); startingDateAndTime = new DateTime(betStartsTime.year, betStartsTime.month, betStartsTime.day, betStartsTime.hour, betStartsTime.minutes, 0); endingDateAndTime = new DateTime(betEndsTime.year, betEndsTime.month, betEndsTime.day, betEndsTime.hour, betEndsTime.minutes, 0); timeOfDay = GameTime.GetTimeOfDay(); timeOfDayListeners = new ArrayList(); gameTimeDisplayer = new GameTimeDisplayer(endingDateAndTime, timeGUISettings); UpdateTime(); discoOpen = IsDiscoOpen(); restaurantOpen = IsRestaurantOpen(); GuiVisible=true; }