Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ ToDateTime() [2/2]

override DateTime System.Globalization.UmAlQuraCalendar.ToDateTime ( int year,
int month,
int day,
int hour,
int minute,
int second,
int millisecond,
int era )
inline

Definition at line 384 of file UmAlQuraCalendar.cs.

385 {
386 if (day >= 1 && day <= 29)
387 {
388 CheckYearMonthRange(year, month, era);
389 }
390 else
391 {
392 int daysInMonth = GetDaysInMonth(year, month, era);
393 if (day < 1 || day > daysInMonth)
394 {
395 throw new ArgumentOutOfRangeException("day", day, SR.Format(SR.ArgumentOutOfRange_Day, daysInMonth, month));
396 }
397 }
398 long absoluteDateUmAlQura = GetAbsoluteDateUmAlQura(year, month, day);
399 if (absoluteDateUmAlQura < 0)
400 {
401 throw new ArgumentOutOfRangeException(null, SR.ArgumentOutOfRange_BadYearMonthDay);
402 }
403 return new DateTime(absoluteDateUmAlQura * 864000000000L + Calendar.TimeToTicks(hour, minute, second, millisecond));
404 }
static void CheckYearMonthRange(int year, int month, int era)
static long GetAbsoluteDateUmAlQura(int year, int month, int day)
override int GetDaysInMonth(int year, int month, int era)

References System.SR.ArgumentOutOfRange_BadYearMonthDay, System.SR.ArgumentOutOfRange_Day, System.Globalization.UmAlQuraCalendar.CheckYearMonthRange(), System.DateTime, System.SR.Format(), System.Globalization.UmAlQuraCalendar.GetAbsoluteDateUmAlQura(), System.Globalization.UmAlQuraCalendar.GetDaysInMonth(), System.L, System.Globalization.Calendar.TimeToTicks(), and System.year.