2067 {
2075 byte[] array = new byte[16];
2078 {
2080 {
2083 {
2085 continue;
2086 }
2087 if (tile.HasValue)
2088 {
2090 {
2094 {
2098 }
2099 else
2100 {
2102 }
2103 }
2107 }
2114 {
2118 if (
tile2.type > 255)
2119 {
2123 }
2125 {
2126 short num18 = (short)Chest.FindChest(
j, i);
2128 {
2131 }
2132 }
2134 {
2135 short num19 = (short)Chest.FindChest(
j, i);
2137 {
2140 }
2141 }
2142 if (
tile2.type == 85 &&
tile2.frameX % 36 == 0 &&
tile2.frameY % 36 == 0)
2143 {
2144 short num20 = (short)Sign.ReadSign(
j, i);
2146 {
2148 }
2149 }
2150 if (
tile2.type == 55 &&
tile2.frameX % 36 == 0 &&
tile2.frameY % 36 == 0)
2151 {
2152 short num2 = (short)Sign.ReadSign(
j, i);
2154 {
2156 }
2157 }
2159 {
2160 short num3 = (short)Sign.ReadSign(
j, i);
2162 {
2164 }
2165 }
2166 if (
tile2.type == 573 &&
tile2.frameX % 36 == 0 &&
tile2.frameY % 36 == 0)
2167 {
2168 short num4 = (short)Sign.ReadSign(
j, i);
2170 {
2172 }
2173 }
2175 {
2178 {
2180 }
2181 }
2183 {
2186 {
2188 }
2189 }
2191 {
2194 {
2196 }
2197 }
2199 {
2202 {
2204 }
2205 }
2207 {
2210 {
2212 }
2213 }
2215 {
2218 {
2220 }
2221 }
2222 if (
tile2.type == 597 &&
tile2.frameX % 54 == 0 &&
tile2.frameY % 72 == 0)
2223 {
2226 {
2228 }
2229 }
2230 if (Main.tileFrameImportant[
tile2.type])
2231 {
2232 array[
num16] = (byte)((uint)tile2.frameX & 0xFF
u);
2236 array[
num16] = (byte)((uint)tile2.frameY & 0xFF
u);
2240 }
2241 if (
tile2.color() != 0)
2242 {
2243 b3 = (byte)(
b3 | 8
u);
2246 }
2247 }
2248 if (
tile2.wall != 0)
2249 {
2253 if (
tile2.wallColor() != 0)
2254 {
2258 }
2259 }
2260 if (
tile2.liquid != 0)
2261 {
2262 if (!
tile2.shimmer())
2263 {
2265 }
2266 else
2267 {
2270 }
2273 }
2275 {
2276 b4 = (byte)(
b4 | 2
u);
2277 }
2279 {
2280 b4 = (byte)(
b4 | 4
u);
2281 }
2283 {
2284 b4 = (byte)(
b4 | 8
u);
2285 }
2288 if (
tile2.actuator())
2289 {
2290 b3 = (byte)(
b3 | 2
u);
2291 }
2292 if (
tile2.inActive())
2293 {
2294 b3 = (byte)(
b3 | 4
u);
2295 }
2297 {
2299 }
2300 if (
tile2.wall > 255)
2301 {
2305 }
2306 if (
tile2.invisibleBlock())
2307 {
2308 b2 = (byte)(
b2 | 2
u);
2309 }
2310 if (
tile2.invisibleWall())
2311 {
2312 b2 = (byte)(
b2 | 4
u);
2313 }
2314 if (
tile2.fullbrightBlock())
2315 {
2316 b2 = (byte)(
b2 | 8
u);
2317 }
2318 if (
tile2.fullbrightWall())
2319 {
2321 }
2324 {
2325 b3 = (byte)(
b3 | 1
u);
2328 }
2330 {
2331 b4 = (byte)(
b4 | 1
u);
2334 }
2336 {
2340 }
2342 }
2343 }
2345 {
2349 {
2353 }
2354 else
2355 {
2357 }
2358 }
2362 for (
int k = 0;
k <
num;
k++)
2363 {
2366 writer.Write((short)chest.x);
2367 writer.Write((short)chest.y);
2368 writer.Write(chest.name);
2369 }
2370 writer.Write(
num12);
2372 {
2375 writer.Write((short)sign.x);
2376 writer.Write((short)sign.y);
2377 writer.Write(sign.text);
2378 }
2380 {
2383 {
2385 }
2386 }
2387 writer.Write(
num14);
2389 {
2391 }
2392 }
static int VanillaTypeCount
static Dictionary< int, TileEntity > ByID
static Dictionary< Point16, TileEntity > ByPosition
static void Write(BinaryWriter writer, TileEntity ent, bool networkSend=false, bool lightSend=false)
static int Find(int x, int y)
static int Find(int x, int y)
static int Find(int x, int y)
static int Find(int x, int y)
static int Find(int x, int y)
static int Find(int x, int y)
static int Find(int x, int y)
static bool[] BasicDresser
static bool[] AllowsSaveCompressionBatching
If true for a given tile type (P:Terraria.Tile.TileType), then that tile can be compressed when synci...
static readonly ushort Count
static short[] _compressSignList
static short[] _compressChestList
static short[] _compressEntities