private DiscordianDateStructure Convert(int nday, int nyear) { DiscordianDateStructure Output = new DiscordianDateStructure(); Output.year = nyear + 3066; Output.day = nday; Output.season = 0; if ((Output.year % 4) == 2) { if (Output.day == 59) { Output.day = -1; } else if (Output.day > 59) { Output.day -= 1; } } Output.yday = Output.day; while (Output.day > 73) { Output.season++; Output.day -= 73; } return(Output); }
public DiscordianDateStructure MakeDay(int imonth, int iday, int iyear) { DiscordianDateStructure Output = new DiscordianDateStructure(); if ((imonth == 2) && (iday == 29)) { Output.StTibsDay = true; } else { Output.StTibsDay = false; } int[,] cal = new int[2, 12] { { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }, { 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 } }; int dayspast = 0; imonth--; Output.year = iyear + 1166; while (imonth > 0) { dayspast += cal[(Output.year % 4) == 2 ? 1 : 0, --imonth]; } Output.day = dayspast + iday; Output.season = 0; if ((Output.year % 4) == 2) { if (Output.day == 59) { Output.day = -1; } else if (Output.day > 59) { Output.day -= 1; } } Output.yday = Output.day; while (Output.day > 73) { Output.season++; Output.day -= 73; } return(Output); }
public DiscordianDate(DateTime myNonNormalDateTime) { hastur = MakeDay(myNonNormalDateTime.Month, myNonNormalDateTime.Day, myNonNormalDateTime.Year); }
public DiscordianDate() { hastur = MakeDay(DateTime.Now.Month, DateTime.Now.Day, DateTime.Now.Year); }
public DiscordianDateStructure MakeDay(int imonth, int iday, int iyear) { DiscordianDateStructure Output = new DiscordianDateStructure(); int[,] cal = new int[2, 12] { {31,28,31,30,31,30,31,31,30,31,30,31}, { 31,29,31,30,31,30,31,31,30,31,30,31} }; int dayspast = 0; imonth--; Output.year = iyear + 1166; while (imonth > 0) { dayspast += cal[(Output.year % 4) == 2 ? 1 : 0, --imonth]; } Output.day = dayspast + iday; Output.season = 0; if ((Output.year % 4) == 2) { if (Output.day == 59) Output.day = -1; else if (Output.day > 59) Output.day -= 1; } Output.yday = Output.day; while (Output.day > 73) { Output.season++; Output.day -= 73; } return Output; }
private DiscordianDateStructure Convert(int nday, int nyear) { DiscordianDateStructure Output = new DiscordianDateStructure(); Output.year = nyear + 3066; Output.day = nday; Output.season = 0; if ((Output.year % 4) == 2) { if (Output.day == 59) Output.day = -1; else if (Output.day > 59) Output.day -= 1; } Output.yday = Output.day; while (Output.day > 73) { Output.season++; Output.day -= 73; } return Output; }