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

◆ GetDatePart()

int System.DateTime.GetDatePart ( int part)
inlineprivate

Definition at line 781 of file DateTime.cs.

782 {
783 uint num = (uint)(UTicks / 864000000000L);
784 uint num2 = num / 146097;
785 num -= num2 * 146097;
786 uint num3 = num / 36524;
787 if (num3 == 4)
788 {
789 num3 = 3u;
790 }
791 num -= num3 * 36524;
792 uint num4 = num / 1461;
793 num -= num4 * 1461;
794 uint num5 = num / 365;
795 if (num5 == 4)
796 {
797 num5 = 3u;
798 }
799 if (part == 0)
800 {
801 return (int)(num2 * 400 + num3 * 100 + num4 * 4 + num5 + 1);
802 }
803 num -= num5 * 365;
804 if (part == 1)
805 {
806 return (int)(num + 1);
807 }
808 uint[] array = ((num5 == 3 && (num4 != 24 || num3 == 3)) ? s_daysToMonth366 : s_daysToMonth365);
809 uint num6;
810 for (num6 = (num >> 5) + 1; num >= array[num6]; num6++)
811 {
812 }
813 if (part == 2)
814 {
815 return (int)num6;
816 }
817 return (int)(num - array[num6 - 1] + 1);
818 }
static readonly uint[] s_daysToMonth366
Definition DateTime.cs:29
static readonly uint[] s_daysToMonth365
Definition DateTime.cs:23

References System.array, System.Runtime.Serialization.Dictionary, System.L, System.DateTime.s_daysToMonth365, System.DateTime.s_daysToMonth366, and System.DateTime.UTicks.