1856 {
1859 if (versionNumber >= 179)
1860 {
1862 Main.ActiveWorldFileData.SetSeed(
seed);
1863 Main.ActiveWorldFileData.WorldGeneratorVersion = reader.
ReadUInt64();
1864 }
1865 if (versionNumber >= 181)
1866 {
1867 Main.ActiveWorldFileData.UniqueId =
new Guid(reader.
ReadBytes(16));
1868 }
1869 else
1870 {
1871 Main.ActiveWorldFileData.UniqueId =
Guid.
NewGuid();
1872 }
1881 if (versionNumber >= 209)
1882 {
1884 if (versionNumber >= 222)
1885 {
1887 }
1888 if (versionNumber >= 227)
1889 {
1891 }
1892 if (versionNumber >= 238)
1893 {
1894 Main.tenthAnniversaryWorld = reader.
ReadBoolean();
1895 }
1896 if (versionNumber >= 239)
1897 {
1899 }
1900 if (versionNumber >= 241)
1901 {
1903 }
1904 if (versionNumber >= 249)
1905 {
1907 }
1908 if (versionNumber >= 266)
1909 {
1911 }
1912 if (versionNumber >= 267)
1913 {
1915 }
1916 else
1917 {
1918 Main.zenithWorld = Main.remixWorld && Main.drunkWorld;
1919 }
1920 }
1921 else
1922 {
1923 if (versionNumber >= 112)
1924 {
1926 }
1927 else
1928 {
1929 Main.GameMode = 0;
1930 }
1932 {
1933 Main.GameMode = 2;
1934 }
1935 }
1936 if (versionNumber >= 141)
1937 {
1939 }
1951 Main.caveBackStyle[0] = reader.
ReadInt32();
1952 Main.caveBackStyle[1] = reader.
ReadInt32();
1953 Main.caveBackStyle[2] = reader.
ReadInt32();
1954 Main.caveBackStyle[3] = reader.
ReadInt32();
1956 Main.jungleBackStyle = reader.
ReadInt32();
1957 Main.hellBackStyle = reader.
ReadInt32();
1981 if (versionNumber >= 118)
1982 {
1984 }
1994 WorldGen.shadowOrbCount = reader.
ReadByte();
1995 WorldGen.altarCount = reader.
ReadInt32();
1997 if (versionNumber >= 257)
1998 {
2000 }
2001 else
2002 {
2003 Main.afterPartyOfDoom = false;
2004 }
2005 Main.invasionDelay = reader.
ReadInt32();
2009 if (versionNumber >= 118)
2010 {
2012 }
2013 if (versionNumber >= 113)
2014 {
2015 Main.sundialCooldown = reader.
ReadByte();
2016 }
2020 WorldGen.SavedOreTiers.Cobalt = reader.
ReadInt32();
2021 WorldGen.SavedOreTiers.Mythril = reader.
ReadInt32();
2022 WorldGen.SavedOreTiers.Adamantite = reader.
ReadInt32();
2031 Main.cloudBGActive = reader.
ReadInt32();
2032 Main.cloudBGAlpha = (((double)Main.cloudBGActive < 1.0) ? 0f : 1f);
2033 Main.cloudBGActive = -
WorldGen.genRand.Next(8640, 86400);
2036 Main.windSpeedCurrent = Main.windSpeedTarget;
2037 if (versionNumber < 95)
2038 {
2039 return;
2040 }
2041 Main.anglerWhoFinishedToday.
Clear();
2042 for (
int num = reader.
ReadInt32(); num > 0; num--)
2043 {
2045 }
2046 if (versionNumber < 99)
2047 {
2048 return;
2049 }
2051 if (versionNumber < 101)
2052 {
2053 return;
2054 }
2056 if (versionNumber < 104)
2057 {
2058 return;
2059 }
2061 if (versionNumber >= 129)
2062 {
2064 }
2065 if (versionNumber >= 201)
2066 {
2068 }
2069 if (versionNumber < 107)
2070 {
2071 if (Main.invasionType > 0 && Main.invasionSize > 0)
2072 {
2073 Main.FakeLoadInvasionStart();
2074 }
2075 }
2076 else
2077 {
2078 Main.invasionSizeStart = reader.
ReadInt32();
2079 }
2080 if (versionNumber < 108)
2081 {
2083 }
2084 else
2085 {
2087 }
2088 if (versionNumber < 109)
2089 {
2090 return;
2091 }
2093 for (
int i = 0;
i <
num2;
i++)
2094 {
2096 {
2098 }
2099 else
2100 {
2102 }
2103 }
2104 if (versionNumber < 128)
2105 {
2106 return;
2107 }
2108 Main.fastForwardTimeToDawn = reader.
ReadBoolean();
2109 if (versionNumber < 131)
2110 {
2111 return;
2112 }
2119 NPC.downedChristmasIceQueen = reader.
ReadBoolean();
2120 NPC.downedChristmasSantank = reader.
ReadBoolean();
2122 if (versionNumber < 140)
2123 {
2124 return;
2125 }
2135 if (
NPC.TowerActiveSolar)
2136 {
2137 NPC.ShieldStrengthTowerSolar =
NPC.ShieldStrengthTowerMax;
2138 }
2139 if (
NPC.TowerActiveVortex)
2140 {
2141 NPC.ShieldStrengthTowerVortex =
NPC.ShieldStrengthTowerMax;
2142 }
2143 if (
NPC.TowerActiveNebula)
2144 {
2145 NPC.ShieldStrengthTowerNebula =
NPC.ShieldStrengthTowerMax;
2146 }
2147 if (
NPC.TowerActiveStardust)
2148 {
2149 NPC.ShieldStrengthTowerStardust =
NPC.ShieldStrengthTowerMax;
2150 }
2151 if (versionNumber < 170)
2152 {
2157 }
2158 else
2159 {
2165 for (
int j = 0;
j <
num3;
j++)
2166 {
2168 }
2169 }
2170 if (versionNumber < 174)
2171 {
2176 }
2177 else
2178 {
2183 }
2185 if (versionNumber > 194)
2186 {
2188 }
2189 else
2190 {
2192 }
2193 if (versionNumber >= 215)
2194 {
2196 }
2197 else
2198 {
2200 }
2201 if (versionNumber > 195)
2202 {
2206 }
2207 else
2208 {
2212 }
2213 if (versionNumber >= 204)
2214 {
2216 }
2217 if (versionNumber < 207)
2218 {
2223 }
2224 else
2225 {
2230 }
2231 WorldGen.TreeTops.Load(reader, versionNumber);
2232 if (versionNumber >= 212)
2233 {
2234 Main.forceHalloweenForToday = reader.
ReadBoolean();
2236 }
2237 else
2238 {
2239 Main.forceHalloweenForToday = false;
2240 Main.forceXMasForToday = false;
2241 }
2242 if (versionNumber >= 216)
2243 {
2244 WorldGen.SavedOreTiers.Copper = reader.
ReadInt32();
2245 WorldGen.SavedOreTiers.Iron = reader.
ReadInt32();
2246 WorldGen.SavedOreTiers.Silver = reader.
ReadInt32();
2247 WorldGen.SavedOreTiers.Gold = reader.
ReadInt32();
2248 }
2249 else
2250 {
2251 WorldGen.SavedOreTiers.Copper = -1;
2252 WorldGen.SavedOreTiers.Iron = -1;
2253 WorldGen.SavedOreTiers.Silver = -1;
2254 WorldGen.SavedOreTiers.Gold = -1;
2255 }
2256 if (versionNumber >= 217)
2257 {
2261 }
2262 else
2263 {
2264 NPC.boughtCat = false;
2265 NPC.boughtDog = false;
2266 NPC.boughtBunny = false;
2267 }
2268 if (versionNumber >= 223)
2269 {
2272 }
2273 else
2274 {
2275 NPC.downedEmpressOfLight = false;
2276 NPC.downedQueenSlime = false;
2277 }
2278 if (versionNumber >= 240)
2279 {
2281 }
2282 else
2283 {
2284 NPC.downedDeerclops = false;
2285 }
2286 if (versionNumber >= 250)
2287 {
2288 NPC.unlockedSlimeBlueSpawn = reader.
ReadBoolean();
2289 }
2290 else
2291 {
2292 NPC.unlockedSlimeBlueSpawn = false;
2293 }
2294 if (versionNumber >= 251)
2295 {
2297 NPC.unlockedDemolitionistSpawn = reader.
ReadBoolean();
2298 NPC.unlockedPartyGirlSpawn = reader.
ReadBoolean();
2299 NPC.unlockedDyeTraderSpawn = reader.
ReadBoolean();
2301 NPC.unlockedArmsDealerSpawn = reader.
ReadBoolean();
2304 }
2305 else
2306 {
2307 NPC.unlockedMerchantSpawn = false;
2308 NPC.unlockedDemolitionistSpawn = false;
2309 NPC.unlockedPartyGirlSpawn = false;
2310 NPC.unlockedDyeTraderSpawn = false;
2311 NPC.unlockedTruffleSpawn = false;
2312 NPC.unlockedArmsDealerSpawn = false;
2313 NPC.unlockedNurseSpawn = false;
2314 NPC.unlockedPrincessSpawn = false;
2315 }
2316 if (versionNumber >= 259)
2317 {
2318 NPC.combatBookVolumeTwoWasUsed = reader.
ReadBoolean();
2319 }
2320 else
2321 {
2322 NPC.combatBookVolumeTwoWasUsed = false;
2323 }
2324 if (versionNumber >= 260)
2325 {
2326 NPC.peddlersSatchelWasUsed = reader.
ReadBoolean();
2327 }
2328 else
2329 {
2330 NPC.peddlersSatchelWasUsed = false;
2331 }
2332 if (versionNumber >= 261)
2333 {
2334 NPC.unlockedSlimeGreenSpawn = reader.
ReadBoolean();
2336 NPC.unlockedSlimePurpleSpawn = reader.
ReadBoolean();
2337 NPC.unlockedSlimeRainbowSpawn = reader.
ReadBoolean();
2339 NPC.unlockedSlimeYellowSpawn = reader.
ReadBoolean();
2340 NPC.unlockedSlimeCopperSpawn = reader.
ReadBoolean();
2341 }
2342 else
2343 {
2344 NPC.unlockedSlimeGreenSpawn = false;
2345 NPC.unlockedSlimeOldSpawn = false;
2346 NPC.unlockedSlimePurpleSpawn = false;
2347 NPC.unlockedSlimeRainbowSpawn = false;
2348 NPC.unlockedSlimeRedSpawn = false;
2349 NPC.unlockedSlimeYellowSpawn = false;
2350 NPC.unlockedSlimeCopperSpawn = false;
2351 }
2352 if (versionNumber >= 264)
2353 {
2354 Main.fastForwardTimeToDusk = reader.
ReadBoolean();
2355 Main.moondialCooldown = reader.
ReadByte();
2356 }
2357 else
2358 {
2359 Main.fastForwardTimeToDusk = false;
2360 Main.moondialCooldown = 0;
2361 }
2362 Main.UpdateTimeRate();
2363 }
void Add(TKey key, TValue value)
virtual bool ReadBoolean()
virtual double ReadDouble()
virtual string ReadString()
virtual ulong ReadUInt64()
virtual float ReadSingle()
virtual short ReadInt16()
virtual byte[] ReadBytes(int count)
static void Load(BinaryReader reader, int gameVersionNumber)
static readonly short Count
static bool _tempSandstormHappening
static bool _tempLanternNightManual
static float _tempSandstormSeverity
static int _tempCultistDelay
static bool _tempLanternNightGenuine
static int _tempPartyCooldown
static float _tempSandstormIntendedSeverity
static bool _tempPartyGenuine
static readonly List< int > TempPartyCelebratingNPCs
static int _tempSandstormTimeLeft
static float _tempMaxRain
static bool _tempBloodMoon
static bool _tempPartyManual
static bool _tempLanternNightNextNightIsGenuine
static int _versionNumber
static int _tempMoonPhase
static int _tempLanternNightCooldown
static DateTime FromBinary(long dateData)