Esempio n. 1
0
        protected override void OnClick(EventArgs e)
        {
            base.OnClick(e);

            var mousePos = PointToClient(MousePosition);

            if (_lBtnRegion.Contains(mousePos))
            {
                _daysFromToday -= 1;
            }
            else
            {
                _daysFromToday += 1;
            }

            if (_lBtnRegion.Contains(mousePos) || _rBtnRegion.Contains(mousePos))
            {
                OnDayChanged?.Invoke(this);
                Refresh();
            }

            string date = DateTime.Now.AddDays(_daysFromToday).ToString("M");

            _toolTip.SetToolTip(this, $"pour le {date}");
        }
Esempio n. 2
0
        protected override void OnUpdate()
        {
            DeltaTime    = Time.DeltaTime * TimeSpeed;
            ElapsedTime += DeltaTime;

            Second += DeltaTime;
            if (Second >= TimeInHour)
            {
                Hour   += 1;
                Second -= TimeInHour;
                if (Hour < HoursInDay)
                {
                    OnHourChanged?.Invoke(Hour);
                }
            }
            if (Hour >= HoursInDay)
            {
                Day  += 1;
                Hour -= HoursInDay;
                OnHourChanged?.Invoke(Hour);

                if (Day < DaysInMonth)
                {
                    OnDayChanged?.Invoke(Day);
                }
            }
            if (Day >= DaysInMonth)
            {
                Month += 1;
                Day   -= DaysInMonth;
                OnDayChanged?.Invoke(Day);

                if (Month < MonthsInYear)
                {
                    OnMonthChanged?.Invoke(Month);
                }
            }
            if (Month >= MonthsInYear)
            {
                Year  += 1;
                Month -= MonthsInYear;
                OnMonthChanged?.Invoke(Month);
                OnYearChanged?.Invoke(Year);
            }

            Entities
            .WithName("MyTimeManager")
            .ForEach((Entity entity,
                      ref MyTimeTag timeData) =>
            {
                //timeData.ElapsedTime = ElapsedTime;
                //just have a default timetag to force update.
            }).ScheduleParallel();
        }
Esempio n. 3
0
        private void TryDayChange()
        {
            if (_dayModel.Hours < _daySettingsDatabase.DayLength)
            {
                RefreshView();
                return;
            }

            _dayModel.Days++;
            _dayModel.Hours = 0;
            OnDayChanged?.Invoke();
            TryChangeSeason();
            RefreshView();
        }