/* public void PauseTime() * { * if (timeIncreasing) * { * StopCoroutine(IncreaseTime()); * timeIncreasing = false; * } * } * * public void ResumeTime() * { * if (!timeIncreasing) * { * StartCoroutine(IncreaseTime()); * timeIncreasing = true; * } * } */ public void CheckStaffEvents() { foreach (Staff_s inactiveStaff in dm.dispensary.allStaff) { StaffSchedule.WorkShift todaysShift = inactiveStaff.staffSchedule.GetWorkShift(currentDate.day); if (todaysShift.hasWork) { if (!inactiveStaff.cameIntoWorkToday && !inactiveStaff.leftWorkToday) { if (CompareTime(todaysShift.hourIn, todaysShift.minuteIn, todaysShift.inAM)) { dm.dispensary.SpawnStaff(inactiveStaff.uniqueStaffID); inactiveStaff.cameIntoWorkToday = true; } } else if (inactiveStaff.cameIntoWorkToday && !inactiveStaff.leftWorkToday) { if (CompareTime(todaysShift.hourOut, todaysShift.minuteOut, todaysShift.outAM)) { if (inactiveStaff.activeStaff != null) { inactiveStaff.activeStaff.SetAction(StaffPathfinding.StaffAction.leavingStore); } inactiveStaff.leftWorkToday = true; } } } } }
public void CheckValidity_WorkShift() { // Checks the current validity of the input time DispensarySchedule dispensarySchedule = displayObject.dm.dispensary.schedule; StaffSchedule.WorkShift shift = displayObject.staff.staffSchedule.GetWorkShift(displayObject.currentlySelectedDay); if (FieldIdentifier == "ShiftIn") { // Not valid if time comes before dispensary open time, or after shift out time, or after dispensary close time if (displayObject.dateManager.CompareTime(currentHour, currentMinute, am, dispensarySchedule.openingHour, dispensarySchedule.openingMinute, dispensarySchedule.openingAM, false)) { // Time inputted came before dispensary open time CancelEditTime(); return; } if (displayObject.dateManager.CompareTime(shift.hourOut, shift.minuteOut, shift.outAM, currentHour, currentMinute, am, false)) { // Time inputted came after shiftOut time CancelEditTime(); return; } if (displayObject.dateManager.CompareTime(dispensarySchedule.closingHour, dispensarySchedule.closingMinute, dispensarySchedule.closingAM, currentHour, currentMinute, am, false)) { // Time inputted came after dispensary close time CancelEditTime(); return; } // If it makes it here without returning, time is valid //displayObject.dateManager.ResumeTime(); confirmButton.gameObject.SetActive(false); displayObject.UpdateShiftInTime(currentHour, currentMinute, am); } else if (FieldIdentifier == "ShiftOut") { // Not valid if time comes after dispensary close time, before shift in time, or before dispenasry open time if (displayObject.dateManager.CompareTime(dispensarySchedule.closingHour, dispensarySchedule.closingMinute, dispensarySchedule.closingAM, currentHour, currentMinute, am, false)) { // Time inputted came after dispensary closing time CancelEditTime(); return; } if (displayObject.dateManager.CompareTime(currentHour, currentMinute, am, shift.hourIn, shift.minuteIn, shift.inAM, false)) { // Time inputted came before shift in time CancelEditTime(); return; } if (displayObject.dateManager.CompareTime(currentHour, currentMinute, am, dispensarySchedule.openingHour, dispensarySchedule.openingMinute, dispensarySchedule.openingAM, false)) { // Time inputted came before dispensary open time CancelEditTime(); return; } // If it makes it here without returning, time is valid //displayObject.dateManager.ResumeTime(); confirmButton.gameObject.SetActive(false); displayObject.UpdateShiftOutTime(currentHour, currentMinute, am); } }
public void DisplayDayShiftInfo() { StaffSchedule.WorkShift shift = staff.staffSchedule.GetWorkShift(currentlySelectedDay); if (shift.hasWork) { SetToHasWork(); } else { SetToNoWork(); } timeInField.SetupInputField(shift.hourIn, shift.minuteIn, shift.inAM); timeOutField.SetupInputField(shift.hourOut, shift.minuteOut, shift.outAM); //timeInField.inputField.onEndEdit.AddListener(delegate { FinishEditingTimeInField(currentlySelectedDay); }); //timeOutField.inputField.onEndEdit.AddListener(delegate { FinishEditingTimeOutField(currentlySelectedDay); }); currentDayText.text = currentlySelectedDay.ToString() + " Hours"; }