private DateTimeService() { lastNow = Now; tPeriodical = new AsyncTimerAction(TimeSpan.FromSeconds(1), () => { now = Now; if (now.Minute != lastNow.Minute) { tPeriodical.Interval = TimeSpan.FromMinutes(1); MinuteChanged?.Invoke(this, now); if (now.Hour != lastNow.Hour) { HourChanged?.Invoke(this, now); } if (now.Day != lastNow.Day) { DayChanged?.Invoke(this, now); } if (now.Month != lastNow.Month) { MonthChanged?.Invoke(this, now); } if (now.Year != lastNow.Year) { YearChanged?.Invoke(this, now); } } lastNow = now; }); tPeriodical.Start(); }
private void GameDateComponent_TimeChanged(GameDateComponent sender) { if (prevMinute != Minute) { prevMinute = Minute; if (MinuteChanged != null) { MinuteChanged.Invoke(this); } } if (prevHour != Hour) { prevHour = Hour; if (HourChanged != null) { HourChanged.Invoke(this); } } if (prevDay != Day) { prevDay = Day; if (DayChanged != null) { DayChanged.Invoke(this); } } if (prevMonth != Month) { prevMonth = Month; if (MonthChanged != null) { MonthChanged.Invoke(this); } } if (prevYear != Year) { prevYear = Year; if (YearChanged != null) { YearChanged.Invoke(this); } } }
private void OnHourChanged(int value) => HourChanged?.Invoke(this, new IntEventArgs(value));
protected void ChangeOfHours(int godzina) { HourChanged?.Invoke(godzina); // Debug.Log("godzina: " + Godzina + " minuta: " + Minuta); }