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

◆ SendData()

static void Terraria.NetMessage.SendData ( int msgType,
int remoteClient = -1,
int ignoreClient = -1,
NetworkText text = null,
int number = 0,
float number2 = 0f,
float number3 = 0f,
float number4 = 0f,
int number5 = 0,
int number6 = 0,
int number7 = 0 )
inlinestatic

Definition at line 88 of file NetMessage.cs.

89 {
90 if (Main.netMode == 0)
91 {
92 return;
93 }
94 if (msgType == 21 && (Main.item[number].shimmerTime > 0f || Main.item[number].shimmered))
95 {
96 msgType = 145;
97 }
98 int num = 256;
99 if (text == null)
100 {
102 }
103 if (Main.netMode == 2 && remoteClient >= 0)
104 {
105 num = remoteClient;
106 }
107 lock (buffer[num])
108 {
109 BinaryWriter writer = buffer[num].writer;
110 if (writer == null)
111 {
112 buffer[num].ResetWriter();
113 writer = buffer[num].writer;
114 }
115 writer.BaseStream.Position = 0L;
116 long position = writer.BaseStream.Position;
117 writer.BaseStream.Position += 2L;
118 writer.Write((byte)msgType);
119 switch (msgType)
120 {
121 case 1:
122 writer.Write("Terraria" + 279);
123 break;
124 case 2:
125 text.Serialize(writer);
126 if (Main.dedServ)
127 {
128 Console.WriteLine(Language.GetTextValue("CLI.ClientWasBooted", Netplay.Clients[num].Socket.GetRemoteAddress().ToString(), text));
129 }
130 break;
131 case 3:
132 writer.Write((byte)remoteClient);
133 writer.Write(value: false);
134 break;
135 case 4:
136 {
137 Player player4 = Main.player[number];
138 writer.Write((byte)number);
139 writer.Write((byte)player4.skinVariant);
140 writer.Write((byte)player4.hair);
141 writer.Write(player4.name);
142 writer.Write(player4.hairDye);
143 WriteAccessoryVisibility(writer, player4.hideVisibleAccessory);
144 writer.Write(player4.hideMisc);
145 writer.WriteRGB(player4.hairColor);
146 writer.WriteRGB(player4.skinColor);
147 writer.WriteRGB(player4.eyeColor);
148 writer.WriteRGB(player4.shirtColor);
149 writer.WriteRGB(player4.underShirtColor);
150 writer.WriteRGB(player4.pantsColor);
151 writer.WriteRGB(player4.shoeColor);
152 BitsByte bitsByte16 = (byte)0;
153 if (player4.difficulty == 1)
154 {
155 bitsByte16[0] = true;
156 }
157 else if (player4.difficulty == 2)
158 {
159 bitsByte16[1] = true;
160 }
161 else if (player4.difficulty == 3)
162 {
163 bitsByte16[3] = true;
164 }
165 bitsByte16[2] = player4.extraAccessory;
166 writer.Write(bitsByte16);
167 BitsByte bitsByte17 = (byte)0;
168 bitsByte17[0] = player4.UsingBiomeTorches;
169 bitsByte17[1] = player4.happyFunTorchTime;
170 bitsByte17[2] = player4.unlockedBiomeTorches;
171 bitsByte17[3] = player4.unlockedSuperCart;
172 bitsByte17[4] = player4.enabledSuperCart;
173 writer.Write(bitsByte17);
174 BitsByte bitsByte18 = (byte)0;
175 bitsByte18[0] = player4.usedAegisCrystal;
176 bitsByte18[1] = player4.usedAegisFruit;
177 bitsByte18[2] = player4.usedArcaneCrystal;
178 bitsByte18[3] = player4.usedGalaxyPearl;
179 bitsByte18[4] = player4.usedGummyWorm;
180 bitsByte18[5] = player4.usedAmbrosia;
181 bitsByte18[6] = player4.ateArtisanBread;
182 writer.Write(bitsByte18);
183 break;
184 }
185 case 5:
186 {
187 writer.Write((byte)number);
188 writer.Write((short)number2);
189 Player player5 = Main.player[number];
190 Item item6 = null;
191 int num11 = 0;
192 int num12 = 0;
193 item6 = ((number2 >= (float)PlayerItemSlotID.Loadout3_Dye_0) ? player5.Loadouts[2].Dye[(int)number2 - PlayerItemSlotID.Loadout3_Dye_0] : ((number2 >= (float)PlayerItemSlotID.Loadout3_Armor_0) ? player5.Loadouts[2].Armor[(int)number2 - PlayerItemSlotID.Loadout3_Armor_0] : ((number2 >= (float)PlayerItemSlotID.Loadout2_Dye_0) ? player5.Loadouts[1].Dye[(int)number2 - PlayerItemSlotID.Loadout2_Dye_0] : ((number2 >= (float)PlayerItemSlotID.Loadout2_Armor_0) ? player5.Loadouts[1].Armor[(int)number2 - PlayerItemSlotID.Loadout2_Armor_0] : ((number2 >= (float)PlayerItemSlotID.Loadout1_Dye_0) ? player5.Loadouts[0].Dye[(int)number2 - PlayerItemSlotID.Loadout1_Dye_0] : ((number2 >= (float)PlayerItemSlotID.Loadout1_Armor_0) ? player5.Loadouts[0].Armor[(int)number2 - PlayerItemSlotID.Loadout1_Armor_0] : ((number2 >= (float)PlayerItemSlotID.Bank4_0) ? player5.bank4.item[(int)number2 - PlayerItemSlotID.Bank4_0] : ((number2 >= (float)PlayerItemSlotID.Bank3_0) ? player5.bank3.item[(int)number2 - PlayerItemSlotID.Bank3_0] : ((number2 >= (float)PlayerItemSlotID.TrashItem) ? player5.trashItem : ((number2 >= (float)PlayerItemSlotID.Bank2_0) ? player5.bank2.item[(int)number2 - PlayerItemSlotID.Bank2_0] : ((number2 >= (float)PlayerItemSlotID.Bank1_0) ? player5.bank.item[(int)number2 - PlayerItemSlotID.Bank1_0] : ((number2 >= (float)PlayerItemSlotID.MiscDye0) ? player5.miscDyes[(int)number2 - PlayerItemSlotID.MiscDye0] : ((number2 >= (float)PlayerItemSlotID.Misc0) ? player5.miscEquips[(int)number2 - PlayerItemSlotID.Misc0] : ((number2 >= (float)PlayerItemSlotID.Dye0) ? player5.dye[(int)number2 - PlayerItemSlotID.Dye0] : ((!(number2 >= (float)PlayerItemSlotID.Armor0)) ? player5.inventory[(int)number2 - PlayerItemSlotID.Inventory0] : player5.armor[(int)number2 - PlayerItemSlotID.Armor0])))))))))))))));
194 if (item6.Name == "" || item6.stack == 0 || item6.type == 0)
195 {
196 item6.SetDefaults(0, noMatCheck: true);
197 }
198 num11 = item6.stack;
199 num12 = item6.netID;
200 if (num11 < 0)
201 {
202 num11 = 0;
203 }
204 writer.Write((short)num11);
205 writer.Write((byte)number3);
206 writer.Write((short)num12);
207 break;
208 }
209 case 7:
210 {
211 writer.Write((int)Main.time);
212 BitsByte bitsByte5 = (byte)0;
213 bitsByte5[0] = Main.dayTime;
214 bitsByte5[1] = Main.bloodMoon;
215 bitsByte5[2] = Main.eclipse;
216 writer.Write(bitsByte5);
217 writer.Write((byte)Main.moonPhase);
218 writer.Write((short)Main.maxTilesX);
219 writer.Write((short)Main.maxTilesY);
220 writer.Write((short)Main.spawnTileX);
221 writer.Write((short)Main.spawnTileY);
222 writer.Write((short)Main.worldSurface);
223 writer.Write((short)Main.rockLayer);
224 writer.Write(Main.worldID);
225 writer.Write(Main.worldName);
226 writer.Write((byte)Main.GameMode);
227 writer.Write(Main.ActiveWorldFileData.UniqueId.ToByteArray());
228 writer.Write(Main.ActiveWorldFileData.WorldGeneratorVersion);
229 writer.Write((byte)Main.moonType);
230 writer.Write((byte)WorldGen.treeBG1);
231 writer.Write((byte)WorldGen.treeBG2);
232 writer.Write((byte)WorldGen.treeBG3);
233 writer.Write((byte)WorldGen.treeBG4);
234 writer.Write((byte)WorldGen.corruptBG);
235 writer.Write((byte)WorldGen.jungleBG);
236 writer.Write((byte)WorldGen.snowBG);
237 writer.Write((byte)WorldGen.hallowBG);
238 writer.Write((byte)WorldGen.crimsonBG);
239 writer.Write((byte)WorldGen.desertBG);
240 writer.Write((byte)WorldGen.oceanBG);
241 writer.Write((byte)WorldGen.mushroomBG);
242 writer.Write((byte)WorldGen.underworldBG);
243 writer.Write((byte)Main.iceBackStyle);
244 writer.Write((byte)Main.jungleBackStyle);
245 writer.Write((byte)Main.hellBackStyle);
246 writer.Write(Main.windSpeedTarget);
247 writer.Write((byte)Main.numClouds);
248 for (int n = 0; n < 3; n++)
249 {
250 writer.Write(Main.treeX[n]);
251 }
252 for (int num8 = 0; num8 < 4; num8++)
253 {
254 writer.Write((byte)Main.treeStyle[num8]);
255 }
256 for (int num9 = 0; num9 < 3; num9++)
257 {
258 writer.Write(Main.caveBackX[num9]);
259 }
260 for (int num10 = 0; num10 < 4; num10++)
261 {
262 writer.Write((byte)Main.caveBackStyle[num10]);
263 }
264 WorldGen.TreeTops.SyncSend(writer);
265 if (!Main.raining)
266 {
267 Main.maxRaining = 0f;
268 }
269 writer.Write(Main.maxRaining);
270 BitsByte bitsByte6 = (byte)0;
271 bitsByte6[0] = WorldGen.shadowOrbSmashed;
272 bitsByte6[1] = NPC.downedBoss1;
273 bitsByte6[2] = NPC.downedBoss2;
274 bitsByte6[3] = NPC.downedBoss3;
275 bitsByte6[4] = Main.hardMode;
276 bitsByte6[5] = NPC.downedClown;
277 bitsByte6[7] = NPC.downedPlantBoss;
278 writer.Write(bitsByte6);
279 BitsByte bitsByte7 = (byte)0;
280 bitsByte7[0] = NPC.downedMechBoss1;
281 bitsByte7[1] = NPC.downedMechBoss2;
282 bitsByte7[2] = NPC.downedMechBoss3;
283 bitsByte7[3] = NPC.downedMechBossAny;
284 bitsByte7[4] = Main.cloudBGActive >= 1f;
285 bitsByte7[5] = WorldGen.crimson;
286 bitsByte7[6] = Main.pumpkinMoon;
287 bitsByte7[7] = Main.snowMoon;
288 writer.Write(bitsByte7);
289 BitsByte bitsByte8 = (byte)0;
290 bitsByte8[1] = Main.fastForwardTimeToDawn;
291 bitsByte8[2] = Main.slimeRain;
292 bitsByte8[3] = NPC.downedSlimeKing;
293 bitsByte8[4] = NPC.downedQueenBee;
294 bitsByte8[5] = NPC.downedFishron;
295 bitsByte8[6] = NPC.downedMartians;
296 bitsByte8[7] = NPC.downedAncientCultist;
297 writer.Write(bitsByte8);
298 BitsByte bitsByte9 = (byte)0;
299 bitsByte9[0] = NPC.downedMoonlord;
300 bitsByte9[1] = NPC.downedHalloweenKing;
301 bitsByte9[2] = NPC.downedHalloweenTree;
302 bitsByte9[3] = NPC.downedChristmasIceQueen;
303 bitsByte9[4] = NPC.downedChristmasSantank;
304 bitsByte9[5] = NPC.downedChristmasTree;
305 bitsByte9[6] = NPC.downedGolemBoss;
306 bitsByte9[7] = BirthdayParty.PartyIsUp;
307 writer.Write(bitsByte9);
308 BitsByte bitsByte10 = (byte)0;
309 bitsByte10[0] = NPC.downedPirates;
310 bitsByte10[1] = NPC.downedFrost;
311 bitsByte10[2] = NPC.downedGoblins;
312 bitsByte10[3] = Sandstorm.Happening;
313 bitsByte10[4] = DD2Event.Ongoing;
314 bitsByte10[5] = DD2Event.DownedInvasionT1;
315 bitsByte10[6] = DD2Event.DownedInvasionT2;
316 bitsByte10[7] = DD2Event.DownedInvasionT3;
317 writer.Write(bitsByte10);
318 BitsByte bitsByte11 = (byte)0;
319 bitsByte11[0] = NPC.combatBookWasUsed;
320 bitsByte11[1] = LanternNight.LanternsUp;
321 bitsByte11[2] = NPC.downedTowerSolar;
322 bitsByte11[3] = NPC.downedTowerVortex;
323 bitsByte11[4] = NPC.downedTowerNebula;
324 bitsByte11[5] = NPC.downedTowerStardust;
325 bitsByte11[6] = Main.forceHalloweenForToday;
326 bitsByte11[7] = Main.forceXMasForToday;
327 writer.Write(bitsByte11);
328 BitsByte bitsByte12 = (byte)0;
329 bitsByte12[0] = NPC.boughtCat;
330 bitsByte12[1] = NPC.boughtDog;
331 bitsByte12[2] = NPC.boughtBunny;
332 bitsByte12[3] = NPC.freeCake;
333 bitsByte12[4] = Main.drunkWorld;
334 bitsByte12[5] = NPC.downedEmpressOfLight;
335 bitsByte12[6] = NPC.downedQueenSlime;
336 bitsByte12[7] = Main.getGoodWorld;
337 writer.Write(bitsByte12);
338 BitsByte bitsByte13 = (byte)0;
339 bitsByte13[0] = Main.tenthAnniversaryWorld;
340 bitsByte13[1] = Main.dontStarveWorld;
341 bitsByte13[2] = NPC.downedDeerclops;
342 bitsByte13[3] = Main.notTheBeesWorld;
343 bitsByte13[4] = Main.remixWorld;
344 bitsByte13[5] = NPC.unlockedSlimeBlueSpawn;
345 bitsByte13[6] = NPC.combatBookVolumeTwoWasUsed;
346 bitsByte13[7] = NPC.peddlersSatchelWasUsed;
347 writer.Write(bitsByte13);
348 BitsByte bitsByte14 = (byte)0;
349 bitsByte14[0] = NPC.unlockedSlimeGreenSpawn;
350 bitsByte14[1] = NPC.unlockedSlimeOldSpawn;
351 bitsByte14[2] = NPC.unlockedSlimePurpleSpawn;
352 bitsByte14[3] = NPC.unlockedSlimeRainbowSpawn;
353 bitsByte14[4] = NPC.unlockedSlimeRedSpawn;
354 bitsByte14[5] = NPC.unlockedSlimeYellowSpawn;
355 bitsByte14[6] = NPC.unlockedSlimeCopperSpawn;
356 bitsByte14[7] = Main.fastForwardTimeToDusk;
357 writer.Write(bitsByte14);
358 BitsByte bitsByte15 = (byte)0;
359 bitsByte15[0] = Main.noTrapsWorld;
360 bitsByte15[1] = Main.zenithWorld;
361 bitsByte15[2] = NPC.unlockedTruffleSpawn;
362 writer.Write(bitsByte15);
363 writer.Write((byte)Main.sundialCooldown);
364 writer.Write((byte)Main.moondialCooldown);
365 writer.Write((short)WorldGen.SavedOreTiers.Copper);
366 writer.Write((short)WorldGen.SavedOreTiers.Iron);
367 writer.Write((short)WorldGen.SavedOreTiers.Silver);
368 writer.Write((short)WorldGen.SavedOreTiers.Gold);
369 writer.Write((short)WorldGen.SavedOreTiers.Cobalt);
370 writer.Write((short)WorldGen.SavedOreTiers.Mythril);
371 writer.Write((short)WorldGen.SavedOreTiers.Adamantite);
372 writer.Write((sbyte)Main.invasionType);
373 if (SocialAPI.Network != null)
374 {
375 writer.Write(SocialAPI.Network.GetLobbyId());
376 }
377 else
378 {
379 writer.Write(0uL);
380 }
382 break;
383 }
384 case 8:
385 writer.Write(number);
386 writer.Write((int)number2);
387 break;
388 case 9:
389 {
390 writer.Write(number);
391 text.Serialize(writer);
392 BitsByte bitsByte22 = (byte)number2;
393 writer.Write(bitsByte22);
394 break;
395 }
396 case 10:
397 CompressTileBlock(number, (int)number2, (short)number3, (short)number4, writer.BaseStream);
398 break;
399 case 11:
400 writer.Write((short)number);
401 writer.Write((short)number2);
402 writer.Write((short)number3);
403 writer.Write((short)number4);
404 break;
405 case 12:
406 {
407 Player player6 = Main.player[number];
408 writer.Write((byte)number);
409 writer.Write((short)player6.SpawnX);
410 writer.Write((short)player6.SpawnY);
411 writer.Write(player6.respawnTimer);
412 writer.Write((short)player6.numberOfDeathsPVE);
413 writer.Write((short)player6.numberOfDeathsPVP);
414 writer.Write((byte)number2);
415 break;
416 }
417 case 13:
418 {
419 Player player7 = Main.player[number];
420 writer.Write((byte)number);
421 BitsByte bitsByte25 = (byte)0;
422 bitsByte25[0] = player7.controlUp;
423 bitsByte25[1] = player7.controlDown;
424 bitsByte25[2] = player7.controlLeft;
425 bitsByte25[3] = player7.controlRight;
426 bitsByte25[4] = player7.controlJump;
427 bitsByte25[5] = player7.controlUseItem;
428 bitsByte25[6] = player7.direction == 1;
429 writer.Write(bitsByte25);
430 BitsByte bitsByte26 = (byte)0;
431 bitsByte26[0] = player7.pulley;
432 bitsByte26[1] = player7.pulley && player7.pulleyDir == 2;
433 bitsByte26[2] = player7.velocity != Vector2.Zero;
434 bitsByte26[3] = player7.vortexStealthActive;
435 bitsByte26[4] = player7.gravDir == 1f;
436 bitsByte26[5] = player7.shieldRaised;
437 bitsByte26[6] = player7.ghost;
438 writer.Write(bitsByte26);
439 BitsByte bitsByte27 = (byte)0;
440 bitsByte27[0] = player7.tryKeepingHoveringUp;
441 bitsByte27[1] = player7.IsVoidVaultEnabled;
442 bitsByte27[2] = player7.sitting.isSitting;
443 bitsByte27[3] = player7.downedDD2EventAnyDifficulty;
444 bitsByte27[4] = player7.isPettingAnimal;
445 bitsByte27[5] = player7.isTheAnimalBeingPetSmall;
446 bitsByte27[6] = player7.PotionOfReturnOriginalUsePosition.HasValue;
447 bitsByte27[7] = player7.tryKeepingHoveringDown;
448 writer.Write(bitsByte27);
449 BitsByte bitsByte28 = (byte)0;
450 bitsByte28[0] = player7.sleeping.isSleeping;
451 bitsByte28[1] = player7.autoReuseAllWeapons;
452 bitsByte28[2] = player7.controlDownHold;
453 bitsByte28[3] = player7.isOperatingAnotherEntity;
454 bitsByte28[4] = player7.controlUseTile;
455 writer.Write(bitsByte28);
456 writer.Write((byte)player7.selectedItem);
457 writer.WriteVector2(player7.position);
458 if (bitsByte26[2])
459 {
460 writer.WriteVector2(player7.velocity);
461 }
462 if (bitsByte27[6])
463 {
464 writer.WriteVector2(player7.PotionOfReturnOriginalUsePosition.Value);
465 writer.WriteVector2(player7.PotionOfReturnHomePosition.Value);
466 }
467 break;
468 }
469 case 14:
470 writer.Write((byte)number);
471 writer.Write((byte)number2);
472 break;
473 case 16:
474 writer.Write((byte)number);
475 writer.Write((short)Main.player[number].statLife);
476 writer.Write((short)Main.player[number].statLifeMax);
477 break;
478 case 17:
479 writer.Write((byte)number);
480 writer.Write((short)number2);
481 writer.Write((short)number3);
482 writer.Write((short)number4);
483 writer.Write((byte)number5);
484 break;
485 case 18:
486 writer.Write((byte)(Main.dayTime ? 1u : 0u));
487 writer.Write((int)Main.time);
488 writer.Write(Main.sunModY);
489 writer.Write(Main.moonModY);
490 break;
491 case 19:
492 writer.Write((byte)number);
493 writer.Write((short)number2);
494 writer.Write((short)number3);
495 writer.Write((number4 == 1f) ? ((byte)1) : ((byte)0));
496 break;
497 case 20:
498 {
499 int num13 = number;
500 int num14 = (int)number2;
501 int num15 = (int)number3;
502 if (num15 < 0)
503 {
504 num15 = 0;
505 }
506 int num16 = (int)number4;
507 if (num16 < 0)
508 {
509 num16 = 0;
510 }
511 if (num13 < num15)
512 {
513 num13 = num15;
514 }
515 if (num13 >= Main.maxTilesX + num15)
516 {
517 num13 = Main.maxTilesX - num15 - 1;
518 }
519 if (num14 < num16)
520 {
521 num14 = num16;
522 }
523 if (num14 >= Main.maxTilesY + num16)
524 {
525 num14 = Main.maxTilesY - num16 - 1;
526 }
527 writer.Write((short)num13);
528 writer.Write((short)num14);
529 writer.Write((byte)num15);
530 writer.Write((byte)num16);
531 writer.Write((byte)number5);
532 for (int num17 = num13; num17 < num13 + num15; num17++)
533 {
534 for (int num18 = num14; num18 < num14 + num16; num18++)
535 {
536 BitsByte bitsByte19 = (byte)0;
537 BitsByte bitsByte20 = (byte)0;
538 BitsByte bitsByte21 = (byte)0;
539 byte b3 = 0;
540 byte b4 = 0;
541 Tile tile2 = Main.tile[num17, num18];
542 bitsByte19[0] = tile2.active();
543 bitsByte19[2] = tile2.wall > 0;
544 bitsByte19[3] = tile2.liquid > 0 && Main.netMode == 2;
545 bitsByte19[4] = tile2.wire();
546 bitsByte19[5] = tile2.halfBrick();
547 bitsByte19[6] = tile2.actuator();
548 bitsByte19[7] = tile2.inActive();
549 bitsByte20[0] = tile2.wire2();
550 bitsByte20[1] = tile2.wire3();
551 if (tile2.active() && tile2.color() > 0)
552 {
553 bitsByte20[2] = true;
554 b3 = tile2.color();
555 }
556 if (tile2.wall > 0 && tile2.wallColor() > 0)
557 {
558 bitsByte20[3] = true;
559 b4 = tile2.wallColor();
560 }
561 bitsByte20 = (byte)((byte)bitsByte20 + (byte)(tile2.slope() << 4));
562 bitsByte20[7] = tile2.wire4();
563 bitsByte21[0] = tile2.fullbrightBlock();
564 bitsByte21[1] = tile2.fullbrightWall();
565 bitsByte21[2] = tile2.invisibleBlock();
566 bitsByte21[3] = tile2.invisibleWall();
567 writer.Write(bitsByte19);
568 writer.Write(bitsByte20);
569 writer.Write(bitsByte21);
570 if (b3 > 0)
571 {
572 writer.Write(b3);
573 }
574 if (b4 > 0)
575 {
576 writer.Write(b4);
577 }
578 if (tile2.active())
579 {
580 writer.Write(tile2.type);
581 if (Main.tileFrameImportant[tile2.type])
582 {
583 writer.Write(tile2.frameX);
584 writer.Write(tile2.frameY);
585 }
586 }
587 if (tile2.wall > 0)
588 {
589 writer.Write(tile2.wall);
590 }
591 if (tile2.liquid > 0 && Main.netMode == 2)
592 {
593 writer.Write(tile2.liquid);
594 writer.Write(tile2.liquidType());
595 }
596 }
597 }
598 break;
599 }
600 case 21:
601 case 90:
602 case 145:
603 case 148:
604 {
605 Item item3 = Main.item[number];
606 writer.Write((short)number);
607 writer.WriteVector2(item3.position);
608 writer.WriteVector2(item3.velocity);
609 writer.Write((short)item3.stack);
610 writer.Write(item3.prefix);
611 writer.Write((byte)number2);
612 short value2 = 0;
613 if (item3.active && item3.stack > 0)
614 {
615 value2 = (short)item3.netID;
616 }
617 writer.Write(value2);
618 if (msgType == 145)
619 {
620 writer.Write(item3.shimmered);
621 writer.Write(item3.shimmerTime);
622 }
623 if (msgType == 148)
624 {
625 writer.Write((byte)MathHelper.Clamp(item3.timeLeftInWhichTheItemCannotBeTakenByEnemies, 0f, 255f));
626 }
627 break;
628 }
629 case 22:
630 writer.Write((short)number);
631 writer.Write((byte)Main.item[number].playerIndexTheItemIsReservedFor);
632 break;
633 case 23:
634 {
635 NPC nPC2 = Main.npc[number];
636 writer.Write((short)number);
637 writer.WriteVector2(nPC2.position);
638 writer.WriteVector2(nPC2.velocity);
639 writer.Write((ushort)nPC2.target);
640 int num4 = nPC2.life;
641 if (!nPC2.active)
642 {
643 num4 = 0;
644 }
645 if (!nPC2.active || nPC2.life <= 0)
646 {
647 nPC2.netSkip = 0;
648 }
649 short value3 = (short)nPC2.netID;
650 bool[] array = new bool[4];
651 BitsByte bitsByte3 = (byte)0;
652 bitsByte3[0] = nPC2.direction > 0;
653 bitsByte3[1] = nPC2.directionY > 0;
654 bitsByte3[2] = (array[0] = nPC2.ai[0] != 0f);
655 bitsByte3[3] = (array[1] = nPC2.ai[1] != 0f);
656 bitsByte3[4] = (array[2] = nPC2.ai[2] != 0f);
657 bitsByte3[5] = (array[3] = nPC2.ai[3] != 0f);
658 bitsByte3[6] = nPC2.spriteDirection > 0;
659 bitsByte3[7] = num4 == nPC2.lifeMax;
660 writer.Write(bitsByte3);
661 BitsByte bitsByte4 = (byte)0;
662 bitsByte4[0] = nPC2.statsAreScaledForThisManyPlayers > 1;
663 bitsByte4[1] = nPC2.SpawnedFromStatue;
664 bitsByte4[2] = nPC2.strengthMultiplier != 1f;
665 writer.Write(bitsByte4);
666 for (int m = 0; m < NPC.maxAI; m++)
667 {
668 if (array[m])
669 {
670 writer.Write(nPC2.ai[m]);
671 }
672 }
673 writer.Write(value3);
674 if (bitsByte4[0])
675 {
676 writer.Write((byte)nPC2.statsAreScaledForThisManyPlayers);
677 }
678 if (bitsByte4[2])
679 {
680 writer.Write(nPC2.strengthMultiplier);
681 }
682 if (!bitsByte3[7])
683 {
684 byte b2 = 1;
685 if (nPC2.lifeMax > 32767)
686 {
687 b2 = 4;
688 }
689 else if (nPC2.lifeMax > 127)
690 {
691 b2 = 2;
692 }
693 writer.Write(b2);
694 switch (b2)
695 {
696 case 2:
697 writer.Write((short)num4);
698 break;
699 case 4:
700 writer.Write(num4);
701 break;
702 default:
703 writer.Write((sbyte)num4);
704 break;
705 }
706 }
707 if (nPC2.type >= 0 && nPC2.type < NPCID.Count && Main.npcCatchable[nPC2.type])
708 {
709 writer.Write((byte)nPC2.releaseOwner);
710 }
711 break;
712 }
713 case 24:
714 writer.Write((short)number);
715 writer.Write((byte)number2);
716 break;
717 case 107:
718 writer.Write((byte)number2);
719 writer.Write((byte)number3);
720 writer.Write((byte)number4);
721 text.Serialize(writer);
722 writer.Write((short)number5);
723 break;
724 case 27:
725 {
726 Projectile projectile = Main.projectile[number];
727 writer.Write((short)projectile.identity);
728 writer.WriteVector2(projectile.position);
729 writer.WriteVector2(projectile.velocity);
730 writer.Write((byte)projectile.owner);
731 writer.Write((short)projectile.type);
732 BitsByte bitsByte23 = (byte)0;
733 BitsByte bitsByte24 = (byte)0;
734 bitsByte23[0] = projectile.ai[0] != 0f;
735 bitsByte23[1] = projectile.ai[1] != 0f;
736 bitsByte24[0] = projectile.ai[2] != 0f;
737 if (projectile.bannerIdToRespondTo != 0)
738 {
739 bitsByte23[3] = true;
740 }
741 if (projectile.damage != 0)
742 {
743 bitsByte23[4] = true;
744 }
745 if (projectile.knockBack != 0f)
746 {
747 bitsByte23[5] = true;
748 }
749 if (projectile.type > 0 && projectile.type < ProjectileID.Count && ProjectileID.Sets.NeedsUUID[projectile.type])
750 {
751 bitsByte23[7] = true;
752 }
753 if (projectile.originalDamage != 0)
754 {
755 bitsByte23[6] = true;
756 }
757 if ((byte)bitsByte24 != 0)
758 {
759 bitsByte23[2] = true;
760 }
761 writer.Write(bitsByte23);
762 if (bitsByte23[2])
763 {
764 writer.Write(bitsByte24);
765 }
766 if (bitsByte23[0])
767 {
768 writer.Write(projectile.ai[0]);
769 }
770 if (bitsByte23[1])
771 {
772 writer.Write(projectile.ai[1]);
773 }
774 if (bitsByte23[3])
775 {
776 writer.Write((ushort)projectile.bannerIdToRespondTo);
777 }
778 if (bitsByte23[4])
779 {
780 writer.Write((short)projectile.damage);
781 }
782 if (bitsByte23[5])
783 {
784 writer.Write(projectile.knockBack);
785 }
786 if (bitsByte23[6])
787 {
788 writer.Write((short)projectile.originalDamage);
789 }
790 if (bitsByte23[7])
791 {
792 writer.Write((short)projectile.projUUID);
793 }
794 if (bitsByte24[0])
795 {
796 writer.Write(projectile.ai[2]);
797 }
798 break;
799 }
800 case 28:
801 writer.Write((short)number);
802 writer.Write((short)number2);
803 writer.Write(number3);
804 writer.Write((byte)(number4 + 1f));
805 writer.Write((byte)number5);
806 break;
807 case 29:
808 writer.Write((short)number);
809 writer.Write((byte)number2);
810 break;
811 case 30:
812 writer.Write((byte)number);
813 writer.Write(Main.player[number].hostile);
814 break;
815 case 31:
816 writer.Write((short)number);
817 writer.Write((short)number2);
818 break;
819 case 32:
820 {
821 Item item7 = Main.chest[number].item[(byte)number2];
822 writer.Write((short)number);
823 writer.Write((byte)number2);
824 short value4 = (short)item7.netID;
825 if (item7.Name == null)
826 {
827 value4 = 0;
828 }
829 writer.Write((short)item7.stack);
830 writer.Write(item7.prefix);
831 writer.Write(value4);
832 break;
833 }
834 case 33:
835 {
836 int num5 = 0;
837 int num6 = 0;
838 int num7 = 0;
839 string text2 = null;
840 if (number > -1)
841 {
842 num5 = Main.chest[number].x;
843 num6 = Main.chest[number].y;
844 }
845 if (number2 == 1f)
846 {
847 string text3 = text.ToString();
848 num7 = (byte)text3.Length;
849 if (num7 == 0 || num7 > 20)
850 {
851 num7 = 255;
852 }
853 else
854 {
855 text2 = text3;
856 }
857 }
858 writer.Write((short)number);
859 writer.Write((short)num5);
860 writer.Write((short)num6);
861 writer.Write((byte)num7);
862 if (text2 != null)
863 {
864 writer.Write(text2);
865 }
866 break;
867 }
868 case 34:
869 writer.Write((byte)number);
870 writer.Write((short)number2);
871 writer.Write((short)number3);
872 writer.Write((short)number4);
873 if (Main.netMode == 2)
874 {
875 Netplay.GetSectionX((int)number2);
876 Netplay.GetSectionY((int)number3);
877 writer.Write((short)number5);
878 }
879 else
880 {
881 writer.Write((short)0);
882 }
883 break;
884 case 35:
885 writer.Write((byte)number);
886 writer.Write((short)number2);
887 break;
888 case 36:
889 {
890 Player player3 = Main.player[number];
891 writer.Write((byte)number);
892 writer.Write(player3.zone1);
893 writer.Write(player3.zone2);
894 writer.Write(player3.zone3);
895 writer.Write(player3.zone4);
896 writer.Write(player3.zone5);
897 break;
898 }
899 case 38:
900 writer.Write(Netplay.ServerPassword);
901 break;
902 case 39:
903 writer.Write((short)number);
904 break;
905 case 40:
906 writer.Write((byte)number);
907 writer.Write((short)Main.player[number].talkNPC);
908 break;
909 case 41:
910 writer.Write((byte)number);
911 writer.Write(Main.player[number].itemRotation);
912 writer.Write((short)Main.player[number].itemAnimation);
913 break;
914 case 42:
915 writer.Write((byte)number);
916 writer.Write((short)Main.player[number].statMana);
917 writer.Write((short)Main.player[number].statManaMax);
918 break;
919 case 43:
920 writer.Write((byte)number);
921 writer.Write((short)number2);
922 break;
923 case 45:
924 writer.Write((byte)number);
925 writer.Write((byte)Main.player[number].team);
926 break;
927 case 46:
928 writer.Write((short)number);
929 writer.Write((short)number2);
930 break;
931 case 47:
932 writer.Write((short)number);
933 writer.Write((short)Main.sign[number].x);
934 writer.Write((short)Main.sign[number].y);
935 writer.Write(Main.sign[number].text);
936 writer.Write((byte)number2);
937 writer.Write((byte)number3);
938 break;
939 case 48:
940 {
941 Tile tile = Main.tile[number, (int)number2];
942 writer.Write((short)number);
943 writer.Write((short)number2);
944 writer.Write(tile.liquid);
945 writer.Write(tile.liquidType());
946 break;
947 }
948 case 50:
949 {
950 writer.Write((byte)number);
951 for (int l = 0; l < Player.maxBuffs; l++)
952 {
953 writer.Write((ushort)Main.player[number].buffType[l]);
954 }
955 break;
956 }
957 case 51:
958 writer.Write((byte)number);
959 writer.Write((byte)number2);
960 break;
961 case 52:
962 writer.Write((byte)number2);
963 writer.Write((short)number3);
964 writer.Write((short)number4);
965 break;
966 case 53:
967 writer.Write((short)number);
968 writer.Write((ushort)number2);
969 writer.Write((short)number3);
970 break;
971 case 54:
972 {
973 writer.Write((short)number);
974 for (int k = 0; k < NPC.maxBuffs; k++)
975 {
976 writer.Write((ushort)Main.npc[number].buffType[k]);
977 writer.Write((short)Main.npc[number].buffTime[k]);
978 }
979 break;
980 }
981 case 55:
982 writer.Write((byte)number);
983 writer.Write((ushort)number2);
984 writer.Write((int)number3);
985 break;
986 case 56:
987 writer.Write((short)number);
988 if (Main.netMode == 2)
989 {
990 string givenName = Main.npc[number].GivenName;
991 writer.Write(givenName);
992 writer.Write(Main.npc[number].townNpcVariationIndex);
993 }
994 break;
995 case 57:
996 writer.Write(WorldGen.tGood);
997 writer.Write(WorldGen.tEvil);
998 writer.Write(WorldGen.tBlood);
999 break;
1000 case 58:
1001 writer.Write((byte)number);
1002 writer.Write(number2);
1003 break;
1004 case 59:
1005 writer.Write((short)number);
1006 writer.Write((short)number2);
1007 break;
1008 case 60:
1009 writer.Write((short)number);
1010 writer.Write((short)number2);
1011 writer.Write((short)number3);
1012 writer.Write((byte)number4);
1013 break;
1014 case 61:
1015 writer.Write((short)number);
1016 writer.Write((short)number2);
1017 break;
1018 case 62:
1019 writer.Write((byte)number);
1020 writer.Write((byte)number2);
1021 break;
1022 case 63:
1023 case 64:
1024 writer.Write((short)number);
1025 writer.Write((short)number2);
1026 writer.Write((byte)number3);
1027 writer.Write((byte)number4);
1028 break;
1029 case 65:
1030 {
1031 BitsByte bitsByte29 = (byte)0;
1032 bitsByte29[0] = (number & 1) == 1;
1033 bitsByte29[1] = (number & 2) == 2;
1034 bitsByte29[2] = number6 == 1;
1035 bitsByte29[3] = number7 != 0;
1036 writer.Write(bitsByte29);
1037 writer.Write((short)number2);
1038 writer.Write(number3);
1039 writer.Write(number4);
1040 writer.Write((byte)number5);
1041 if (bitsByte29[3])
1042 {
1043 writer.Write(number7);
1044 }
1045 break;
1046 }
1047 case 66:
1048 writer.Write((byte)number);
1049 writer.Write((short)number2);
1050 break;
1051 case 68:
1052 writer.Write(Main.clientUUID);
1053 break;
1054 case 69:
1055 Netplay.GetSectionX((int)number2);
1056 Netplay.GetSectionY((int)number3);
1057 writer.Write((short)number);
1058 writer.Write((short)number2);
1059 writer.Write((short)number3);
1060 writer.Write(Main.chest[(short)number].name);
1061 break;
1062 case 70:
1063 writer.Write((short)number);
1064 writer.Write((byte)number2);
1065 break;
1066 case 71:
1067 writer.Write(number);
1068 writer.Write((int)number2);
1069 writer.Write((short)number3);
1070 writer.Write((byte)number4);
1071 break;
1072 case 72:
1073 {
1074 for (int num20 = 0; num20 < 40; num20++)
1075 {
1076 writer.Write((short)Main.travelShop[num20]);
1077 }
1078 break;
1079 }
1080 case 73:
1081 writer.Write((byte)number);
1082 break;
1083 case 74:
1084 {
1085 writer.Write((byte)Main.anglerQuest);
1086 bool value7 = Main.anglerWhoFinishedToday.Contains(text.ToString());
1087 writer.Write(value7);
1088 break;
1089 }
1090 case 76:
1091 writer.Write((byte)number);
1092 writer.Write(Main.player[number].anglerQuestsFinished);
1093 writer.Write(Main.player[number].golferScoreAccumulated);
1094 break;
1095 case 77:
1096 writer.Write((short)number);
1097 writer.Write((ushort)number2);
1098 writer.Write((short)number3);
1099 writer.Write((short)number4);
1100 break;
1101 case 78:
1102 writer.Write(number);
1103 writer.Write((int)number2);
1104 writer.Write((sbyte)number3);
1105 writer.Write((sbyte)number4);
1106 break;
1107 case 79:
1108 writer.Write((short)number);
1109 writer.Write((short)number2);
1110 writer.Write((short)number3);
1111 writer.Write((short)number4);
1112 writer.Write((byte)number5);
1113 writer.Write((sbyte)number6);
1114 writer.Write(number7 == 1);
1115 break;
1116 case 80:
1117 writer.Write((byte)number);
1118 writer.Write((short)number2);
1119 break;
1120 case 81:
1121 {
1122 writer.Write(number2);
1123 writer.Write(number3);
1124 Color c2 = default(Color);
1125 c2.PackedValue = (uint)number;
1126 writer.WriteRGB(c2);
1127 writer.Write((int)number4);
1128 break;
1129 }
1130 case 119:
1131 {
1132 writer.Write(number2);
1133 writer.Write(number3);
1134 Color c = default(Color);
1135 c.PackedValue = (uint)number;
1136 writer.WriteRGB(c);
1137 text.Serialize(writer);
1138 break;
1139 }
1140 case 83:
1141 {
1142 int num19 = number;
1143 if (num19 < 0 && num19 >= 290)
1144 {
1145 num19 = 1;
1146 }
1147 int value6 = NPC.killCount[num19];
1148 writer.Write((short)num19);
1149 writer.Write(value6);
1150 break;
1151 }
1152 case 84:
1153 {
1154 byte b5 = (byte)number;
1155 float stealth = Main.player[b5].stealth;
1156 writer.Write(b5);
1157 writer.Write(stealth);
1158 break;
1159 }
1160 case 85:
1161 {
1162 short value5 = (short)number;
1163 writer.Write(value5);
1164 break;
1165 }
1166 case 86:
1167 {
1168 writer.Write(number);
1169 bool flag3 = TileEntity.ByID.ContainsKey(number);
1170 writer.Write(flag3);
1171 if (flag3)
1172 {
1173 TileEntity.Write(writer, TileEntity.ByID[number], networkSend: true);
1174 }
1175 break;
1176 }
1177 case 87:
1178 writer.Write((short)number);
1179 writer.Write((short)number2);
1180 writer.Write((byte)number3);
1181 break;
1182 case 88:
1183 {
1184 BitsByte bitsByte = (byte)number2;
1185 BitsByte bitsByte2 = (byte)number3;
1186 writer.Write((short)number);
1187 writer.Write(bitsByte);
1188 Item item5 = Main.item[number];
1189 if (bitsByte[0])
1190 {
1191 writer.Write(item5.color.PackedValue);
1192 }
1193 if (bitsByte[1])
1194 {
1195 writer.Write((ushort)item5.damage);
1196 }
1197 if (bitsByte[2])
1198 {
1199 writer.Write(item5.knockBack);
1200 }
1201 if (bitsByte[3])
1202 {
1203 writer.Write((ushort)item5.useAnimation);
1204 }
1205 if (bitsByte[4])
1206 {
1207 writer.Write((ushort)item5.useTime);
1208 }
1209 if (bitsByte[5])
1210 {
1211 writer.Write((short)item5.shoot);
1212 }
1213 if (bitsByte[6])
1214 {
1215 writer.Write(item5.shootSpeed);
1216 }
1217 if (bitsByte[7])
1218 {
1219 writer.Write(bitsByte2);
1220 if (bitsByte2[0])
1221 {
1222 writer.Write((ushort)item5.width);
1223 }
1224 if (bitsByte2[1])
1225 {
1226 writer.Write((ushort)item5.height);
1227 }
1228 if (bitsByte2[2])
1229 {
1230 writer.Write(item5.scale);
1231 }
1232 if (bitsByte2[3])
1233 {
1234 writer.Write((short)item5.ammo);
1235 }
1236 if (bitsByte2[4])
1237 {
1238 writer.Write((short)item5.useAmmo);
1239 }
1240 if (bitsByte2[5])
1241 {
1242 writer.Write(item5.notAmmo);
1243 }
1244 }
1245 break;
1246 }
1247 case 89:
1248 {
1249 writer.Write((short)number);
1250 writer.Write((short)number2);
1251 Item item4 = Main.player[(int)number4].inventory[(int)number3];
1252 writer.Write((short)item4.netID);
1253 writer.Write(item4.prefix);
1254 writer.Write((short)number5);
1255 break;
1256 }
1257 case 91:
1258 writer.Write(number);
1259 writer.Write((byte)number2);
1260 if (number2 != 255f)
1261 {
1262 writer.Write((ushort)number3);
1263 writer.Write((ushort)number4);
1264 writer.Write((byte)number5);
1265 if (number5 < 0)
1266 {
1267 writer.Write((short)number6);
1268 }
1269 }
1270 break;
1271 case 92:
1272 writer.Write((short)number);
1273 writer.Write((int)number2);
1274 writer.Write(number3);
1275 writer.Write(number4);
1276 break;
1277 case 95:
1278 writer.Write((ushort)number);
1279 writer.Write((byte)number2);
1280 break;
1281 case 96:
1282 {
1283 writer.Write((byte)number);
1284 Player player2 = Main.player[number];
1285 writer.Write((short)number4);
1286 writer.Write(number2);
1287 writer.Write(number3);
1288 writer.WriteVector2(player2.velocity);
1289 break;
1290 }
1291 case 97:
1292 writer.Write((short)number);
1293 break;
1294 case 98:
1295 writer.Write((short)number);
1296 break;
1297 case 99:
1298 writer.Write((byte)number);
1299 writer.WriteVector2(Main.player[number].MinionRestTargetPoint);
1300 break;
1301 case 115:
1302 writer.Write((byte)number);
1303 writer.Write((short)Main.player[number].MinionAttackTargetNPC);
1304 break;
1305 case 100:
1306 {
1307 writer.Write((ushort)number);
1308 NPC nPC = Main.npc[number];
1309 writer.Write((short)number4);
1310 writer.Write(number2);
1311 writer.Write(number3);
1312 writer.WriteVector2(nPC.velocity);
1313 break;
1314 }
1315 case 101:
1316 writer.Write((ushort)NPC.ShieldStrengthTowerSolar);
1317 writer.Write((ushort)NPC.ShieldStrengthTowerVortex);
1318 writer.Write((ushort)NPC.ShieldStrengthTowerNebula);
1319 writer.Write((ushort)NPC.ShieldStrengthTowerStardust);
1320 break;
1321 case 102:
1322 writer.Write((byte)number);
1323 writer.Write((ushort)number2);
1324 writer.Write(number3);
1325 writer.Write(number4);
1326 break;
1327 case 103:
1328 writer.Write(NPC.MaxMoonLordCountdown);
1329 writer.Write(NPC.MoonLordCountdown);
1330 break;
1331 case 104:
1332 writer.Write((byte)number);
1333 writer.Write((short)number2);
1334 writer.Write(((short)number3 < 0) ? 0f : number3);
1335 writer.Write((byte)number4);
1336 writer.Write(number5);
1337 writer.Write((byte)number6);
1338 break;
1339 case 105:
1340 writer.Write((short)number);
1341 writer.Write((short)number2);
1342 writer.Write(number3 == 1f);
1343 break;
1344 case 106:
1345 writer.Write(new HalfVector2(number, number2).PackedValue);
1346 break;
1347 case 108:
1348 writer.Write((short)number);
1349 writer.Write(number2);
1350 writer.Write((short)number3);
1351 writer.Write((short)number4);
1352 writer.Write((short)number5);
1353 writer.Write((short)number6);
1354 writer.Write((byte)number7);
1355 break;
1356 case 109:
1357 writer.Write((short)number);
1358 writer.Write((short)number2);
1359 writer.Write((short)number3);
1360 writer.Write((short)number4);
1361 writer.Write((byte)number5);
1362 break;
1363 case 110:
1364 writer.Write((short)number);
1365 writer.Write((short)number2);
1366 writer.Write((byte)number3);
1367 break;
1368 case 112:
1369 writer.Write((byte)number);
1370 writer.Write((int)number2);
1371 writer.Write((int)number3);
1372 writer.Write((byte)number4);
1373 writer.Write((short)number5);
1374 break;
1375 case 113:
1376 writer.Write((short)number);
1377 writer.Write((short)number2);
1378 break;
1379 case 116:
1380 writer.Write(number);
1381 break;
1382 case 117:
1383 writer.Write((byte)number);
1384 _currentPlayerDeathReason.WriteSelfTo(writer);
1385 writer.Write((short)number2);
1386 writer.Write((byte)(number3 + 1f));
1387 writer.Write((byte)number4);
1388 writer.Write((sbyte)number5);
1389 break;
1390 case 118:
1391 writer.Write((byte)number);
1392 _currentPlayerDeathReason.WriteSelfTo(writer);
1393 writer.Write((short)number2);
1394 writer.Write((byte)(number3 + 1f));
1395 writer.Write((byte)number4);
1396 break;
1397 case 120:
1398 writer.Write((byte)number);
1399 writer.Write((byte)number2);
1400 break;
1401 case 121:
1402 {
1403 int num3 = (int)number3;
1404 bool flag2 = number4 == 1f;
1405 if (flag2)
1406 {
1407 num3 += 8;
1408 }
1409 writer.Write((byte)number);
1410 writer.Write((int)number2);
1411 writer.Write((byte)num3);
1412 if (TileEntity.ByID[(int)number2] is TEDisplayDoll tEDisplayDoll)
1413 {
1414 tEDisplayDoll.WriteItem((int)number3, writer, flag2);
1415 break;
1416 }
1417 writer.Write(0);
1418 writer.Write((byte)0);
1419 break;
1420 }
1421 case 122:
1422 writer.Write(number);
1423 writer.Write((byte)number2);
1424 break;
1425 case 123:
1426 {
1427 writer.Write((short)number);
1428 writer.Write((short)number2);
1429 Item item2 = Main.player[(int)number4].inventory[(int)number3];
1430 writer.Write((short)item2.netID);
1431 writer.Write(item2.prefix);
1432 writer.Write((short)number5);
1433 break;
1434 }
1435 case 124:
1436 {
1437 int num2 = (int)number3;
1438 bool flag = number4 == 1f;
1439 if (flag)
1440 {
1441 num2 += 2;
1442 }
1443 writer.Write((byte)number);
1444 writer.Write((int)number2);
1445 writer.Write((byte)num2);
1446 if (TileEntity.ByID[(int)number2] is TEHatRack tEHatRack)
1447 {
1448 tEHatRack.WriteItem((int)number3, writer, flag);
1449 break;
1450 }
1451 writer.Write(0);
1452 writer.Write((byte)0);
1453 break;
1454 }
1455 case 125:
1456 writer.Write((byte)number);
1457 writer.Write((short)number2);
1458 writer.Write((short)number3);
1459 writer.Write((byte)number4);
1460 break;
1461 case 126:
1462 _currentRevengeMarker.WriteSelfTo(writer);
1463 break;
1464 case 127:
1465 writer.Write(number);
1466 break;
1467 case 128:
1468 writer.Write((byte)number);
1469 writer.Write((ushort)number5);
1470 writer.Write((ushort)number6);
1471 writer.Write((ushort)number2);
1472 writer.Write((ushort)number3);
1473 break;
1474 case 130:
1475 writer.Write((ushort)number);
1476 writer.Write((ushort)number2);
1477 writer.Write((short)number3);
1478 break;
1479 case 131:
1480 {
1481 writer.Write((ushort)number);
1482 writer.Write((byte)number2);
1483 byte b = (byte)number2;
1484 if (b == 1)
1485 {
1486 writer.Write((int)number3);
1487 writer.Write((short)number4);
1488 }
1489 break;
1490 }
1491 case 132:
1492 _currentNetSoundInfo.WriteSelfTo(writer);
1493 break;
1494 case 133:
1495 {
1496 writer.Write((short)number);
1497 writer.Write((short)number2);
1498 Item item = Main.player[(int)number4].inventory[(int)number3];
1499 writer.Write((short)item.netID);
1500 writer.Write(item.prefix);
1501 writer.Write((short)number5);
1502 break;
1503 }
1504 case 134:
1505 {
1506 writer.Write((byte)number);
1507 Player player = Main.player[number];
1508 writer.Write(player.ladyBugLuckTimeLeft);
1509 writer.Write(player.torchLuck);
1510 writer.Write(player.luckPotion);
1511 writer.Write(player.HasGardenGnomeNearby);
1512 writer.Write(player.equipmentBasedLuckBonus);
1513 writer.Write(player.coinLuck);
1514 break;
1515 }
1516 case 135:
1517 writer.Write((byte)number);
1518 break;
1519 case 136:
1520 {
1521 for (int i = 0; i < 2; i++)
1522 {
1523 for (int j = 0; j < 3; j++)
1524 {
1525 writer.Write((ushort)NPC.cavernMonsterType[i, j]);
1526 }
1527 }
1528 break;
1529 }
1530 case 137:
1531 writer.Write((short)number);
1532 writer.Write((ushort)number2);
1533 break;
1534 case 139:
1535 {
1536 writer.Write((byte)number);
1537 bool value = number2 == 1f;
1538 writer.Write(value);
1539 break;
1540 }
1541 case 140:
1542 writer.Write((byte)number);
1543 writer.Write((int)number2);
1544 break;
1545 case 141:
1546 writer.Write((byte)number);
1547 writer.Write((byte)number2);
1548 writer.Write(number3);
1549 writer.Write(number4);
1550 writer.Write(number5);
1551 writer.Write(number6);
1552 break;
1553 case 142:
1554 {
1555 writer.Write((byte)number);
1556 Player obj = Main.player[number];
1557 obj.piggyBankProjTracker.Write(writer);
1558 obj.voidLensChest.Write(writer);
1559 break;
1560 }
1561 case 146:
1562 writer.Write((byte)number);
1563 switch (number)
1564 {
1565 case 0:
1566 writer.WriteVector2(new Vector2((int)number2, (int)number3));
1567 break;
1568 case 1:
1569 writer.WriteVector2(new Vector2((int)number2, (int)number3));
1570 writer.Write((int)number4);
1571 break;
1572 case 2:
1573 writer.Write((int)number2);
1574 break;
1575 }
1576 break;
1577 case 147:
1578 writer.Write((byte)number);
1579 writer.Write((byte)number2);
1580 WriteAccessoryVisibility(writer, Main.player[number].hideVisibleAccessory);
1581 break;
1582 }
1583 int num21 = (int)writer.BaseStream.Position;
1584 if (num21 > 65535)
1585 {
1586 throw new Exception("Maximum packet length exceeded. id: " + msgType + " length: " + num21);
1587 }
1588 writer.BaseStream.Position = position;
1589 writer.Write((ushort)num21);
1590 writer.BaseStream.Position = num21;
1591 if (Main.netMode == 1)
1592 {
1593 if (Netplay.Connection.Socket.IsConnected())
1594 {
1595 try
1596 {
1597 buffer[num].spamCount++;
1598 Main.ActiveNetDiagnosticsUI.CountSentMessage(msgType, num21);
1599 Netplay.Connection.Socket.AsyncSend(buffer[num].writeBuffer, 0, num21, Netplay.Connection.ClientWriteCallBack);
1600 }
1601 catch
1602 {
1603 }
1604 }
1605 }
1606 else if (remoteClient == -1)
1607 {
1608 switch (msgType)
1609 {
1610 case 34:
1611 case 69:
1612 {
1613 for (int num23 = 0; num23 < 256; num23++)
1614 {
1615 if (num23 != ignoreClient && buffer[num23].broadcast && Netplay.Clients[num23].IsConnected())
1616 {
1617 try
1618 {
1619 buffer[num23].spamCount++;
1620 Main.ActiveNetDiagnosticsUI.CountSentMessage(msgType, num21);
1621 Netplay.Clients[num23].Socket.AsyncSend(buffer[num].writeBuffer, 0, num21, Netplay.Clients[num23].ServerWriteCallBack);
1622 }
1623 catch
1624 {
1625 }
1626 }
1627 }
1628 break;
1629 }
1630 case 20:
1631 {
1632 for (int num27 = 0; num27 < 256; num27++)
1633 {
1634 if (num27 != ignoreClient && buffer[num27].broadcast && Netplay.Clients[num27].IsConnected() && Netplay.Clients[num27].SectionRange((int)Math.Max(number3, number4), number, (int)number2))
1635 {
1636 try
1637 {
1638 buffer[num27].spamCount++;
1639 Main.ActiveNetDiagnosticsUI.CountSentMessage(msgType, num21);
1640 Netplay.Clients[num27].Socket.AsyncSend(buffer[num].writeBuffer, 0, num21, Netplay.Clients[num27].ServerWriteCallBack);
1641 }
1642 catch
1643 {
1644 }
1645 }
1646 }
1647 break;
1648 }
1649 case 23:
1650 {
1651 NPC nPC4 = Main.npc[number];
1652 for (int num28 = 0; num28 < 256; num28++)
1653 {
1654 if (num28 == ignoreClient || !buffer[num28].broadcast || !Netplay.Clients[num28].IsConnected())
1655 {
1656 continue;
1657 }
1658 bool flag6 = false;
1659 if (nPC4.boss || nPC4.netAlways || nPC4.townNPC || !nPC4.active)
1660 {
1661 flag6 = true;
1662 }
1663 else if (nPC4.netSkip <= 0)
1664 {
1665 Rectangle rect5 = Main.player[num28].getRect();
1666 Rectangle rect6 = nPC4.getRect();
1667 rect6.X -= 2500;
1668 rect6.Y -= 2500;
1669 rect6.Width += 5000;
1670 rect6.Height += 5000;
1671 if (rect5.Intersects(rect6))
1672 {
1673 flag6 = true;
1674 }
1675 }
1676 else
1677 {
1678 flag6 = true;
1679 }
1680 if (flag6)
1681 {
1682 try
1683 {
1684 buffer[num28].spamCount++;
1685 Main.ActiveNetDiagnosticsUI.CountSentMessage(msgType, num21);
1686 Netplay.Clients[num28].Socket.AsyncSend(buffer[num].writeBuffer, 0, num21, Netplay.Clients[num28].ServerWriteCallBack);
1687 }
1688 catch
1689 {
1690 }
1691 }
1692 }
1693 nPC4.netSkip++;
1694 if (nPC4.netSkip > 4)
1695 {
1696 nPC4.netSkip = 0;
1697 }
1698 break;
1699 }
1700 case 28:
1701 {
1702 NPC nPC3 = Main.npc[number];
1703 for (int num25 = 0; num25 < 256; num25++)
1704 {
1705 if (num25 == ignoreClient || !buffer[num25].broadcast || !Netplay.Clients[num25].IsConnected())
1706 {
1707 continue;
1708 }
1709 bool flag5 = false;
1710 if (nPC3.life <= 0)
1711 {
1712 flag5 = true;
1713 }
1714 else
1715 {
1716 Rectangle rect3 = Main.player[num25].getRect();
1717 Rectangle rect4 = nPC3.getRect();
1718 rect4.X -= 3000;
1719 rect4.Y -= 3000;
1720 rect4.Width += 6000;
1721 rect4.Height += 6000;
1722 if (rect3.Intersects(rect4))
1723 {
1724 flag5 = true;
1725 }
1726 }
1727 if (flag5)
1728 {
1729 try
1730 {
1731 buffer[num25].spamCount++;
1732 Main.ActiveNetDiagnosticsUI.CountSentMessage(msgType, num21);
1733 Netplay.Clients[num25].Socket.AsyncSend(buffer[num].writeBuffer, 0, num21, Netplay.Clients[num25].ServerWriteCallBack);
1734 }
1735 catch
1736 {
1737 }
1738 }
1739 }
1740 break;
1741 }
1742 case 13:
1743 {
1744 for (int num26 = 0; num26 < 256; num26++)
1745 {
1746 if (num26 != ignoreClient && buffer[num26].broadcast && Netplay.Clients[num26].IsConnected())
1747 {
1748 try
1749 {
1750 buffer[num26].spamCount++;
1751 Main.ActiveNetDiagnosticsUI.CountSentMessage(msgType, num21);
1752 Netplay.Clients[num26].Socket.AsyncSend(buffer[num].writeBuffer, 0, num21, Netplay.Clients[num26].ServerWriteCallBack);
1753 }
1754 catch
1755 {
1756 }
1757 }
1758 }
1759 Main.player[number].netSkip++;
1760 if (Main.player[number].netSkip > 2)
1761 {
1762 Main.player[number].netSkip = 0;
1763 }
1764 break;
1765 }
1766 case 27:
1767 {
1768 Projectile projectile2 = Main.projectile[number];
1769 for (int num24 = 0; num24 < 256; num24++)
1770 {
1771 if (num24 == ignoreClient || !buffer[num24].broadcast || !Netplay.Clients[num24].IsConnected())
1772 {
1773 continue;
1774 }
1775 bool flag4 = false;
1776 if (projectile2.type == 12 || Main.projPet[projectile2.type] || projectile2.aiStyle == 11 || projectile2.netImportant)
1777 {
1778 flag4 = true;
1779 }
1780 else
1781 {
1782 Rectangle rect = Main.player[num24].getRect();
1783 Rectangle rect2 = projectile2.getRect();
1784 rect2.X -= 5000;
1785 rect2.Y -= 5000;
1786 rect2.Width += 10000;
1787 rect2.Height += 10000;
1788 if (rect.Intersects(rect2))
1789 {
1790 flag4 = true;
1791 }
1792 }
1793 if (flag4)
1794 {
1795 try
1796 {
1797 buffer[num24].spamCount++;
1798 Main.ActiveNetDiagnosticsUI.CountSentMessage(msgType, num21);
1799 Netplay.Clients[num24].Socket.AsyncSend(buffer[num].writeBuffer, 0, num21, Netplay.Clients[num24].ServerWriteCallBack);
1800 }
1801 catch
1802 {
1803 }
1804 }
1805 }
1806 break;
1807 }
1808 default:
1809 {
1810 for (int num22 = 0; num22 < 256; num22++)
1811 {
1812 if (num22 != ignoreClient && (buffer[num22].broadcast || (Netplay.Clients[num22].State >= 3 && msgType == 10)) && Netplay.Clients[num22].IsConnected())
1813 {
1814 try
1815 {
1816 buffer[num22].spamCount++;
1817 Main.ActiveNetDiagnosticsUI.CountSentMessage(msgType, num21);
1818 Netplay.Clients[num22].Socket.AsyncSend(buffer[num].writeBuffer, 0, num21, Netplay.Clients[num22].ServerWriteCallBack);
1819 }
1820 catch
1821 {
1822 }
1823 }
1824 }
1825 break;
1826 }
1827 }
1828 }
1829 else if (Netplay.Clients[remoteClient].IsConnected())
1830 {
1831 try
1832 {
1833 buffer[remoteClient].spamCount++;
1834 Main.ActiveNetDiagnosticsUI.CountSentMessage(msgType, num21);
1835 Netplay.Clients[remoteClient].Socket.AsyncSend(buffer[num].writeBuffer, 0, num21, Netplay.Clients[remoteClient].ServerWriteCallBack);
1836 }
1837 catch
1838 {
1839 }
1840 }
1841 if (Main.verboseNetplay)
1842 {
1843 for (int num29 = 0; num29 < num21; num29++)
1844 {
1845 }
1846 for (int num30 = 0; num30 < num21; num30++)
1847 {
1848 _ = buffer[num].writeBuffer[num30];
1849 }
1850 }
1851 buffer[num].writeLocked = false;
1852 if (msgType == 2 && Main.netMode == 2)
1853 {
1854 Netplay.Clients[num].PendingTermination = true;
1855 Netplay.Clients[num].PendingTerminationApproved = true;
1856 }
1857 }
1858 }
static float Clamp(float value, float min, float max)
Definition MathHelper.cs:46
static void WriteLine()
Definition Console.cs:733
static byte Max(byte val1, byte val2)
Definition Math.cs:738
static Dictionary< int, TileEntity > ByID
Definition TileEntity.cs:18
static void Write(BinaryWriter writer, TileEntity ent, bool networkSend=false)
Definition TileEntity.cs:80
static readonly short Count
Definition NPCID.cs:11744
static readonly int Loadout3_Dye_0
static readonly short Count
static string GetTextValue(string key)
Definition Language.cs:15
static readonly NetworkText Empty
static NetSoundInfo _currentNetSoundInfo
Definition NetMessage.cs:71
static PlayerDeathReason _currentPlayerDeathReason
Definition NetMessage.cs:69
static void WriteAccessoryVisibility(BinaryWriter writer, bool[] hideVisibleAccessory)
static void CompressTileBlock(int xStart, int yStart, short width, short height, Stream stream)
static MessageBuffer[] buffer
Definition NetMessage.cs:61
static CoinLossRevengeSystem.RevengeMarker _currentRevengeMarker
Definition NetMessage.cs:73
static Terraria.Social.Base.NetSocialModule Network
Definition SocialAPI.cs:20
bool Intersects(Rectangle value)
Definition Rectangle.cs:129

References Terraria.NetMessage._currentNetSoundInfo, Terraria.NetMessage._currentPlayerDeathReason, Terraria.NetMessage._currentRevengeMarker, Terraria.Entity.active, Terraria.Tile.active(), Terraria.Main.ActiveNetDiagnosticsUI, Terraria.Main.ActiveWorldFileData, Terraria.Tile.actuator(), Terraria.WorldGen.SavedOreTiers.Adamantite, Terraria.NPC.ai, Terraria.Projectile.ai, Terraria.Projectile.aiStyle, Terraria.Item.ammo, Terraria.Main.anglerQuest, Terraria.Main.anglerWhoFinishedToday, Terraria.EquipmentLoadout.Armor, Terraria.Player.armor, Terraria.ID.PlayerItemSlotID.Armor0, System.array, Terraria.Player.ateArtisanBread, Terraria.Player.autoReuseAllWeapons, Terraria.Player.bank, Terraria.ID.PlayerItemSlotID.Bank1_0, Terraria.Player.bank2, Terraria.ID.PlayerItemSlotID.Bank2_0, Terraria.Player.bank3, Terraria.ID.PlayerItemSlotID.Bank3_0, Terraria.Player.bank4, Terraria.ID.PlayerItemSlotID.Bank4_0, Terraria.Projectile.bannerIdToRespondTo, Terraria.Main.bloodMoon, Terraria.NPC.boss, Terraria.NPC.boughtBunny, Terraria.NPC.boughtCat, Terraria.NPC.boughtDog, Terraria.NetMessage.buffer, Terraria.DataStructures.TileEntity.ByID, Terraria.Main.caveBackStyle, Terraria.Main.caveBackX, Terraria.NPC.cavernMonsterType, Terraria.Main.chest, Microsoft.Xna.Framework.MathHelper.Clamp(), Terraria.Netplay.Clients, Terraria.Main.clientUUID, Terraria.WorldGen.SavedOreTiers.Cobalt, Terraria.Player.coinLuck, Terraria.Item.color, Terraria.Tile.color(), Terraria.NPC.combatBookVolumeTwoWasUsed, Terraria.NPC.combatBookWasUsed, Terraria.NetMessage.CompressTileBlock(), Terraria.Netplay.Connection, Terraria.Player.controlDown, Terraria.Player.controlDownHold, Terraria.Player.controlJump, Terraria.Player.controlLeft, Terraria.Player.controlRight, Terraria.Player.controlUp, Terraria.Player.controlUseItem, Terraria.Player.controlUseTile, Terraria.WorldGen.SavedOreTiers.Copper, Terraria.WorldGen.corruptBG, Terraria.ID.NPCID.Count, Terraria.ID.ProjectileID.Count, Terraria.WorldGen.crimson, Terraria.WorldGen.crimsonBG, Terraria.Item.damage, Terraria.Projectile.damage, Terraria.Main.dayTime, Terraria.Main.dedServ, Terraria.WorldGen.desertBG, Terraria.Player.difficulty, Terraria.Main.dontStarveWorld, Terraria.NPC.downedAncientCultist, Terraria.NPC.downedBoss1, Terraria.NPC.downedBoss2, Terraria.NPC.downedBoss3, Terraria.NPC.downedChristmasIceQueen, Terraria.NPC.downedChristmasSantank, Terraria.NPC.downedChristmasTree, Terraria.NPC.downedClown, Terraria.Player.downedDD2EventAnyDifficulty, Terraria.NPC.downedDeerclops, Terraria.NPC.downedEmpressOfLight, Terraria.NPC.downedFishron, Terraria.NPC.downedFrost, Terraria.NPC.downedGoblins, Terraria.NPC.downedGolemBoss, Terraria.NPC.downedHalloweenKing, Terraria.NPC.downedHalloweenTree, Terraria.GameContent.Events.DD2Event.DownedInvasionT1, Terraria.GameContent.Events.DD2Event.DownedInvasionT2, Terraria.GameContent.Events.DD2Event.DownedInvasionT3, Terraria.NPC.downedMartians, Terraria.NPC.downedMechBoss1, Terraria.NPC.downedMechBoss2, Terraria.NPC.downedMechBoss3, Terraria.NPC.downedMechBossAny, Terraria.NPC.downedMoonlord, Terraria.NPC.downedPirates, Terraria.NPC.downedPlantBoss, Terraria.NPC.downedQueenBee, Terraria.NPC.downedQueenSlime, Terraria.NPC.downedSlimeKing, Terraria.NPC.downedTowerNebula, Terraria.NPC.downedTowerSolar, Terraria.NPC.downedTowerStardust, Terraria.NPC.downedTowerVortex, Terraria.Main.drunkWorld, Terraria.EquipmentLoadout.Dye, Terraria.Player.dye, Terraria.ID.PlayerItemSlotID.Dye0, Terraria.Main.eclipse, Terraria.Localization.NetworkText.Empty, Terraria.Player.enabledSuperCart, Terraria.Player.equipmentBasedLuckBonus, Terraria.Player.extraAccessory, Terraria.Player.eyeColor, Terraria.Main.fastForwardTimeToDawn, Terraria.Main.fastForwardTimeToDusk, Terraria.Main.forceHalloweenForToday, Terraria.Main.forceXMasForToday, Terraria.Tile.frameX, Terraria.Tile.frameY, Terraria.NPC.freeCake, Terraria.Tile.fullbrightBlock(), Terraria.Tile.fullbrightWall(), Terraria.Main.GameMode, Terraria.Main.getGoodWorld, Terraria.NPC.getRect(), Terraria.Projectile.getRect(), Terraria.Netplay.GetSectionX(), Terraria.Netplay.GetSectionY(), Terraria.Localization.Language.GetTextValue(), Terraria.Player.ghost, Terraria.WorldGen.SavedOreTiers.Gold, Terraria.Player.hair, Terraria.Player.hairColor, Terraria.Player.hairDye, Terraria.Tile.halfBrick(), Terraria.WorldGen.hallowBG, Terraria.GameContent.Events.Sandstorm.Happening, Terraria.Player.happyFunTorchTime, Terraria.Main.hardMode, Terraria.Player.HasGardenGnomeNearby, Terraria.Entity.height, Terraria.Main.hellBackStyle, Terraria.Player.hideMisc, Terraria.Player.hideVisibleAccessory, Terraria.Main.iceBackStyle, Terraria.Projectile.identity, Terraria.Tile.inActive(), Terraria.GameContent.Events.Sandstorm.IntendedSeverity, Microsoft.Xna.Framework.Rectangle.Intersects(), Terraria.Main.invasionType, Terraria.Player.inventory, Terraria.ID.PlayerItemSlotID.Inventory0, Terraria.Tile.invisibleBlock(), Terraria.Tile.invisibleWall(), Terraria.WorldGen.SavedOreTiers.Iron, Terraria.Player.isOperatingAnotherEntity, Terraria.Player.isPettingAnimal, Terraria.GameContent.PlayerSittingHelper.isSitting, Terraria.GameContent.PlayerSleepingHelper.isSleeping, Terraria.Player.isTheAnimalBeingPetSmall, Terraria.Player.IsVoidVaultEnabled, System.item, Terraria.Chest.item, Terraria.Main.item, Terraria.Main.jungleBackStyle, Terraria.WorldGen.jungleBG, Terraria.NPC.killCount, Terraria.Item.knockBack, Terraria.Projectile.knockBack, System.L, Terraria.Player.ladyBugLuckTimeLeft, Terraria.GameContent.Events.LanternNight.LanternsUp, Terraria.NPC.life, Terraria.NPC.lifeMax, Terraria.Tile.liquid, Terraria.Tile.liquidType(), Terraria.ID.PlayerItemSlotID.Loadout1_Armor_0, Terraria.ID.PlayerItemSlotID.Loadout1_Dye_0, Terraria.ID.PlayerItemSlotID.Loadout2_Armor_0, Terraria.ID.PlayerItemSlotID.Loadout2_Dye_0, Terraria.ID.PlayerItemSlotID.Loadout3_Armor_0, Terraria.ID.PlayerItemSlotID.Loadout3_Dye_0, Terraria.Player.Loadouts, Terraria.Player.luckPotion, System.Math.Max(), Terraria.NPC.maxAI, Terraria.NPC.maxBuffs, Terraria.Player.maxBuffs, Terraria.NPC.MaxMoonLordCountdown, Terraria.Main.maxRaining, Terraria.Main.maxTilesX, Terraria.Main.maxTilesY, Terraria.ID.PlayerItemSlotID.Misc0, Terraria.ID.PlayerItemSlotID.MiscDye0, Terraria.Player.miscDyes, Terraria.Player.miscEquips, Terraria.Main.moondialCooldown, Terraria.NPC.MoonLordCountdown, Terraria.Main.moonModY, Terraria.Main.moonPhase, Terraria.Main.moonType, Terraria.WorldGen.mushroomBG, Terraria.WorldGen.SavedOreTiers.Mythril, Terraria.Item.Name, Terraria.Player.name, Terraria.ID.ProjectileID.Sets.NeedsUUID, Terraria.NPC.netAlways, Terraria.Item.netID, Terraria.NPC.netID, Terraria.Projectile.netImportant, Terraria.Main.netMode, Terraria.NPC.netSkip, Terraria.Social.SocialAPI.Network, Terraria.Item.notAmmo, Terraria.Main.noTrapsWorld, Terraria.Main.notTheBeesWorld, Terraria.Main.npc, Terraria.Main.npcCatchable, Terraria.Player.numberOfDeathsPVE, Terraria.Player.numberOfDeathsPVP, Terraria.Main.numClouds, System.obj, Terraria.WorldGen.oceanBG, Terraria.GameContent.Events.DD2Event.Ongoing, Terraria.Projectile.originalDamage, Terraria.Projectile.owner, Microsoft.Xna.Framework.Color.PackedValue, Terraria.Player.pantsColor, Terraria.GameContent.Events.BirthdayParty.PartyIsUp, Terraria.NPC.peddlersSatchelWasUsed, Terraria.Main.player, Terraria.Entity.position, Terraria.Player.PotionOfReturnHomePosition, Terraria.Player.PotionOfReturnOriginalUsePosition, Terraria.Item.prefix, Terraria.Main.projectile, Terraria.Main.projPet, Terraria.Projectile.projUUID, Terraria.Player.pulley, Terraria.Main.pumpkinMoon, Terraria.Main.raining, Terraria.NPC.releaseOwner, Terraria.Main.remixWorld, Terraria.Player.respawnTimer, Terraria.Main.rockLayer, Terraria.Item.scale, Terraria.Player.selectedItem, Terraria.Netplay.ServerPassword, Terraria.Item.SetDefaults(), Terraria.WorldGen.shadowOrbSmashed, Terraria.Player.shieldRaised, Terraria.NPC.ShieldStrengthTowerNebula, Terraria.NPC.ShieldStrengthTowerSolar, Terraria.NPC.ShieldStrengthTowerStardust, Terraria.NPC.ShieldStrengthTowerVortex, Terraria.Item.shimmered, Terraria.Item.shimmerTime, Terraria.Player.shirtColor, Terraria.Player.shoeColor, Terraria.Item.shoot, Terraria.Item.shootSpeed, Terraria.Main.sign, Terraria.WorldGen.SavedOreTiers.Silver, Terraria.Player.sitting, Terraria.Player.skinColor, Terraria.Player.skinVariant, Terraria.Player.sleeping, Terraria.Main.slimeRain, Terraria.Tile.slope(), Terraria.WorldGen.snowBG, Terraria.Main.snowMoon, Terraria.NPC.SpawnedFromStatue, Terraria.Main.spawnTileX, Terraria.Main.spawnTileY, Terraria.Player.SpawnX, Terraria.Player.SpawnY, Terraria.Item.stack, Terraria.NPC.statsAreScaledForThisManyPlayers, Terraria.NPC.strengthMultiplier, Terraria.Main.sundialCooldown, Terraria.Main.sunModY, Terraria.NPC.target, Terraria.WorldGen.tBlood, Terraria.Main.tenthAnniversaryWorld, Terraria.WorldGen.tEvil, System.text, Terraria.WorldGen.tGood, Terraria.Main.tile, Terraria.Main.tileFrameImportant, Terraria.Main.time, Terraria.Item.timeLeftInWhichTheItemCannotBeTakenByEnemies, Terraria.Player.torchLuck, Terraria.NPC.townNPC, Terraria.ID.PlayerItemSlotID.TrashItem, Terraria.Main.travelShop, Terraria.WorldGen.treeBG1, Terraria.WorldGen.treeBG2, Terraria.WorldGen.treeBG3, Terraria.WorldGen.treeBG4, Terraria.Main.treeStyle, Terraria.WorldGen.TreeTops, Terraria.Main.treeX, Terraria.Player.tryKeepingHoveringDown, Terraria.Player.tryKeepingHoveringUp, Terraria.Item.type, Terraria.NPC.type, Terraria.Projectile.type, Terraria.Tile.type, Terraria.Player.underShirtColor, Terraria.WorldGen.underworldBG, Terraria.Player.unlockedBiomeTorches, Terraria.NPC.unlockedSlimeBlueSpawn, Terraria.NPC.unlockedSlimeCopperSpawn, Terraria.NPC.unlockedSlimeGreenSpawn, Terraria.NPC.unlockedSlimeOldSpawn, Terraria.NPC.unlockedSlimePurpleSpawn, Terraria.NPC.unlockedSlimeRainbowSpawn, Terraria.NPC.unlockedSlimeRedSpawn, Terraria.NPC.unlockedSlimeYellowSpawn, Terraria.Player.unlockedSuperCart, Terraria.NPC.unlockedTruffleSpawn, Terraria.Item.useAmmo, Terraria.Item.useAnimation, Terraria.Player.usedAegisCrystal, Terraria.Player.usedAegisFruit, Terraria.Player.usedAmbrosia, Terraria.Player.usedArcaneCrystal, Terraria.Player.usedGalaxyPearl, Terraria.Player.usedGummyWorm, Terraria.Item.useTime, Terraria.Player.UsingBiomeTorches, System.value, Terraria.Entity.velocity, Terraria.Main.verboseNetplay, Terraria.Player.vortexStealthActive, Terraria.Tile.wall, Terraria.Tile.wallColor(), Terraria.Entity.width, Terraria.Main.windSpeedTarget, Terraria.Tile.wire(), Terraria.Tile.wire2(), Terraria.Tile.wire3(), Terraria.Tile.wire4(), Terraria.Main.worldID, Terraria.Main.worldName, Terraria.Main.worldSurface, Terraria.DataStructures.TileEntity.Write(), Terraria.NetMessage.WriteAccessoryVisibility(), System.Console.WriteLine(), System.writer, Terraria.Main.zenithWorld, Microsoft.Xna.Framework.Vector2.Zero, Terraria.Player.zone1, Terraria.Player.zone2, Terraria.Player.zone3, Terraria.Player.zone4, and Terraria.Player.zone5.

Referenced by Terraria.GameContent.Tile_Entities.TETrainingDummy.Activate(), Terraria.NPC.AddBuff(), Terraria.Player.AddBuff(), Terraria.Liquid.AddWater(), Terraria.Chest.AfterPlacement_Hook(), Terraria.NPC.AI(), Terraria.NPC.AI_000_TransformBoundNPC(), Terraria.NPC.AI_003_Fighters(), Terraria.NPC.AI_006_Worms(), Terraria.Projectile.AI_007_GrapplingHooks(), Terraria.NPC.AI_007_TownEntities(), Terraria.Projectile.AI_010(), Terraria.NPC.AI_037_Destroyer(), Terraria.Projectile.AI_061_FishingBobber_GiveItemToPlayer(), Terraria.NPC.AI_065_Butterflies(), Terraria.NPC.AI_084_LunaticCultist(), Terraria.NPC.AI_107_ImprovedWalkers(), Terraria.NPC.AI_112_FairyCritter(), Terraria.NPC.AI_120_HallowBoss(), Terraria.NPC.AI_121_QueenSlime(), Terraria.NPC.AI_123_Deerclops(), Terraria.NPC.AI_124_DeerclopsLeg(), Terraria.Projectile.AI_150_GolfClubHelper(), Terraria.Projectile.AI_155_MysticSnakeCoil(), Terraria.Projectile.AI_155_RemoveRope(), Terraria.NPC.AI_87_BigMimic_ShootItem(), Terraria.Player.ApplyDamageToNPC(), Terraria.Player.ApplyNPCOnHitEffects(), Terraria.Player.ApplyTouchDamage(), Terraria.WorldGen.AttemptFossilShattering(), Terraria.Lang.BartenderHelpText(), Terraria.DataStructures.TileEntity.BasicOpenCloseInteraction(), Terraria.NPC.BeHurtByOtherNPC(), Terraria.NPC.BigMimicSpawnSmoke(), Terraria.NPC.BigMimicSummonCheck(), Terraria.NetMessage.BootPlayer(), Terraria.Player.BrainOfConfusionDodge(), Terraria.Main.BuyHairWindow(), Terraria.NPC.CatchNPC(), Terraria.GameContent.Events.Sandstorm.ChangeSeverityIntentions(), Terraria.NPC.CheckActive(), Terraria.NPC.CheckActive_WormSegments(), Terraria.WorldGen.CheckBamboo(), Terraria.WorldGen.CheckCatTail(), Terraria.Player.CheckCrackedBrickBreak(), Terraria.NPC.checkDead(), Terraria.NPC.CheckDrowning(), Terraria.Player.CheckIceBreak(), Terraria.Item.CheckLavaDeath(), Terraria.WorldGen.CheckLilyPad(), Terraria.Wiring.CheckLogicGate(), Terraria.GameContent.Events.DD2Event.CheckProgress(), Terraria.NPC.CheckProgressFrostMoon(), Terraria.NPC.CheckProgressPumpkinMoon(), Terraria.GameContent.CoinLossRevengeSystem.CheckRespawns(), Terraria.WorldGen.CheckSeaOat(), Terraria.RemoteClient.CheckSection(), Terraria.WorldGen.CheckSuper(), Terraria.WorldGen.CheckUnderwaterPlant(), Terraria.GameContent.Events.DD2Event.ClearAllDD2EnergyCrystalsInChests(), Terraria.GameContent.Events.DD2Event.ClearAllDD2EnergyCrystalsInGame(), Terraria.GameContent.Events.DD2Event.ClearAllDD2HostilesInGame(), Terraria.NPC.Collision_LavaCollision(), Terraria.Item.CombineWithNearbyItems(), Terraria.WorldGen.Convert(), Terraria.NPC.CountKillForBannersAndDropThem(), Terraria.WorldGen.CountTiles(), Terraria.Recipe.Create(), Terraria.GameContent.LucyAxeMessage.Create(), Terraria.DelegateMethods.CutTiles(), Terraria.Projectile.CutTilesAt(), Terraria.Projectile.Damage(), Terraria.GameContent.Tile_Entities.TETrainingDummy.Deactivate(), Terraria.NPC.DelBuff(), Terraria.Player.DemonConch(), Terraria.UI.ChestUI.DepositAll(), Terraria.Item.DespawnIfMeetingConditions(), Terraria.GameContent.Events.DD2Event.Difficulty_1_SpawnMonsterFromGate(), Terraria.GameContent.Events.DD2Event.Difficulty_2_SpawnMonsterFromGate(), Terraria.GameContent.Events.DD2Event.Difficulty_3_SpawnMonsterFromGate(), Terraria.Mount.Dismount(), Terraria.NPC.DoDeathEvents(), Terraria.WorldGen.DontStarveTryWateringTile(), Terraria.Player.DoPotionOfReturnReturnToOriginalUsePosition(), Terraria.Player.DoPotionOfReturnTeleportationAndSetTheComebackPoint(), Terraria.Player.DoQueenSlimeHookTeleport(), Terraria.Main.DoUpdateInWorld(), Terraria.Main.DrawInventory(), Terraria.Main.DrawPVPIcons(), Terraria.Player.DropCoins(), Terraria.Projectile.DropGeodeGems(), Terraria.Player.dropItemCheck(), Terraria.Player.DropItemFromExtractinator(), Terraria.NPC.DropItemInstanced(), Terraria.GameContent.ItemDropRules.CommonCode.DropItemLocalPerClientAndSetNPCMoneyTo0(), Terraria.Player.DropSelectedItem(), Terraria.WorldGen.dropXmasTree(), Terraria.Player.EndOngoingTorchGodEvent(), Terraria.Projectile.ExplodeCrackedTiles(), Terraria.Projectile.ExplodeTiles(), Terraria.Item.FindOwner(), Terraria.Player.GetAnglerReward_Bait(), Terraria.Player.GetAnglerReward_Decoration(), Terraria.Player.GetAnglerReward_MainReward(), Terraria.Player.GetAnglerReward_Money(), Terraria.MessageBuffer.GetData(), Terraria.Player.GetDyeTraderReward(), Terraria.UI.ItemSlot.GetGamepadInstructions(), Terraria.Item.GetPickedUpByMonsters_Money(), Terraria.Item.GetPickedUpByMonsters_Special(), Terraria.WorldGen.GetRidOfCultists(), Terraria.Item.GetShimmered(), Terraria.NPC.GetShimmered(), Terraria.WorldGen.GrowCatTail(), Terraria.WorldGen.GrowCheckSeaweed(), Terraria.Main.GUIChatDrawInner(), Terraria.Projectile.HandleMovement(), Terraria.GameContent.TeleportPylonsSystem.HandleTeleportRequest(), Terraria.Player.HealEffect(), Terraria.NPC.HealEffect(), Terraria.NPC.HitEffect(), Terraria.Minecart.HitTrackSwitch(), Terraria.Wiring.HitWireSingle(), Terraria.GameContent.Tile_Entities.TETrainingDummy.Hook_AfterPlacement(), Terraria.GameContent.Tile_Entities.TEItemFrame.Hook_AfterPlacement(), Terraria.GameContent.Tile_Entities.TELogicSensor.Hook_AfterPlacement(), Terraria.GameContent.Tile_Entities.TEDisplayDoll.Hook_AfterPlacement(), Terraria.GameContent.Tile_Entities.TEWeaponsRack.Hook_AfterPlacement(), Terraria.GameContent.Tile_Entities.TEHatRack.Hook_AfterPlacement(), Terraria.GameContent.Tile_Entities.TEFoodPlatter.Hook_AfterPlacement(), Terraria.Player.Hurt(), Terraria.Netplay.InnerClientLoop(), Terraria.Player.ItemCheck(), Terraria.Player.ItemCheck_CheckCanUse(), Terraria.Player.ItemCheck_CheckFishingBobber_PullBobber(), Terraria.Player.ItemCheck_CutTiles(), Terraria.Player.ItemCheck_MeleeHitPVP(), Terraria.Player.ItemCheck_PlayInstruments(), Terraria.Player.ItemCheck_Shoot(), Terraria.Player.ItemCheck_TryPlacingWearablesOnMannequins(), Terraria.Player.ItemCheck_UseArtisanLoaf(), Terraria.Player.ItemCheck_UseBossSpawners(), Terraria.Player.ItemCheck_UseCombatBook(), Terraria.Player.ItemCheck_UseDemonHeart(), Terraria.Player.ItemCheck_UseEventItems(), Terraria.Player.ItemCheck_UseMinecartPowerUp(), Terraria.Player.ItemCheck_UseMiningTools_ActuallyUseMiningTool(), Terraria.Player.ItemCheck_UseMiningTools_TryPoundingTile(), Terraria.Player.ItemCheck_UsePeddlersSatchel(), Terraria.Player.ItemCheck_UseShimmerPermanentItems(), Terraria.Player.ItemCheck_UseTeleportRod(), Terraria.Player.ItemCheck_UseTorchGodsFavor(), Terraria.Player.ItemCheck_UseWiringTools(), Terraria.WorldGen.kickOut(), Terraria.Projectile.Kill(), Terraria.GameContent.Tile_Entities.TELogicSensor.Kill(), Terraria.Player.KillMe(), Terraria.WorldGen.KillTile(), Terraria.UI.ItemSlot.LeftClick(), Terraria.Liquid.LiquidCheck(), Terraria.UI.ChestUI.LootAll(), Terraria.Player.MagicConch(), Terraria.GameContent.UI.EmoteBubble.MakeLocalPlayerEmote(), Terraria.Player.ManaEffect(), Terraria.Wiring.MassWireOperation(), Terraria.Wiring.MassWireOperationStep(), Terraria.GameContent.MinecartDiggerHelper.MineTheTileIfNecessary(), Terraria.GameContent.ItemDropRules.CommonCode.ModifyItemDropFromNPC(), Terraria.Main.Moondialing(), Terraria.UI.ChestUI.MoveCoins(), Terraria.WorldGen.moveRoom(), Terraria.GameContent.Events.BirthdayParty.NaturalAttempt(), Terraria.GameContent.Tile_Entities.TEFoodPlatter.NetPlaceEntity(), Terraria.GameContent.Tile_Entities.TEItemFrame.NetPlaceEntity(), Terraria.GameContent.Tile_Entities.TELogicSensor.NetPlaceEntity(), Terraria.GameContent.Tile_Entities.TEWeaponsRack.NetPlaceEntity(), Terraria.GameContent.Tile_Entities.TEDisplayDoll.NetPlaceEntityAttempt(), Terraria.GameContent.Tile_Entities.TEHatRack.NetPlaceEntityAttempt(), Terraria.GameContent.Tile_Entities.TETeleportationPylon.NetPlaceEntityAttempt(), Terraria.GameContent.UI.EmoteBubble.NewBubble(), Terraria.GameContent.UI.EmoteBubble.NewBubbleNPC(), Terraria.Item.NewItem(), Terraria.Projectile.NewProjectile(), Terraria.Player.NinjaDodge(), Terraria.GameContent.Achievements.AchievementsHelper.NotifyNPCKilled(), Terraria.GameContent.Achievements.AchievementsHelper.NotifyProgressionEvent(), Terraria.GameContent.Tile_Entities.TEFoodPlatter.OnPlayerInteraction(), Terraria.GameContent.Tile_Entities.TEItemFrame.OnPlayerInteraction(), Terraria.GameContent.Tile_Entities.TEWeaponsRack.OnPlayerInteraction(), Terraria.Main.OnSubmitServerPasswordFromRequest(), Terraria.Player.OpenFishingCrate(), Terraria.Player.OpenGoodieBag(), Terraria.Player.OpenHerbBag(), Terraria.Player.OpenLegacyPresent(), Terraria.Player.OpenLockBox(), Terraria.Player.OpenPresent(), Terraria.Player.OpenShadowLockbox(), Terraria.GameContent.Tile_Entities.TEDisplayDoll.OverrideItemSlotLeftClick(), Terraria.GameContent.Tile_Entities.TEHatRack.OverrideItemSlotLeftClick(), Terraria.UI.ItemSlot.OverrideLeftClick(), Terraria.WorldGen.paintCoatTile(), Terraria.WorldGen.paintCoatWall(), Terraria.WorldGen.paintTile(), Terraria.WorldGen.paintWall(), Terraria.Player.PickTile(), Terraria.Player.PickupItem(), Terraria.UI.ItemSlot.PickupItemIntoMouse(), Terraria.Player.PickWall(), Terraria.TileObject.Place(), Terraria.WorldGen.Place3x2(), Terraria.GameContent.MinecartDiggerHelper.PlaceATrack(), Terraria.WorldGen.PlaceChest(), Terraria.GameContent.Tile_Entities.TEFoodPlatter.PlaceItemInFrame(), Terraria.GameContent.Tile_Entities.TEItemFrame.PlaceItemInFrame(), Terraria.GameContent.Tile_Entities.TEWeaponsRack.PlaceItemInFrame(), Terraria.GameContent.Tile_Entities.TETeleportationPylon.PlacementPreviewHook_AfterPlacement(), Terraria.Player.PlaceThing_LockChest(), Terraria.Player.PlaceThing_PaintScrapper_LongMoss(), Terraria.Player.PlaceThing_Tiles_BlockPlacementForAssortedThings(), Terraria.Player.PlaceThing_Tiles_PlaceIt(), Terraria.Player.PlaceThing_Tiles_PlaceIt_AutoPaintAndActuate(), Terraria.Player.PlaceThing_Tiles_PlaceIt_KillGrassForSolids(), Terraria.Player.PlaceThing_Tiles_PlaceIt_SpinSmartPlatform(), Terraria.Player.PlaceThing_Tiles_PlaceIt_TriggerLogicLamp(), Terraria.Player.PlaceThing_Tiles_PlaceIt_UnslopeForSolids(), Terraria.Player.PlaceThing_TryReplacingTiles(), Terraria.Player.PlaceThing_TryReplacingWalls(), Terraria.Player.PlaceThing_Walls(), Terraria.Player.PlaceThing_Walls_FillEmptySpace(), Terraria.Player.PlaceWeapon(), Terraria.NetMessage.PlayNetSound(), Terraria.GameContent.PressurePlateHelper.PokeLocation(), Terraria.WorldGen.PoundPlatform(), Terraria.GameContent.MinecartDiggerHelper.PoundTrack(), Terraria.Player.ProcessHitAgainstNPC(), Terraria.Chat.Commands.EmojiCommand.ProcessOutgoingMessage(), Terraria.Chat.Commands.RockPaperScissorsCommand.ProcessOutgoingMessage(), Terraria.Player.PurgeDD2EnergyCrystals(), Terraria.GameContent.Golf.GolfHelper.ContactListener.PutBallInCup(), Terraria.Player.PutItemInInventoryFromItemUsage(), Terraria.Player.QuickGrapple(), Terraria.Player.QuickSpawnItem(), Terraria.UI.ChestUI.QuickStack(), Terraria.Player.QuickStackAllChests(), Terraria.GameContent.TreeTopsInfo.RandomizeTreeStyle(), Terraria.GameContent.Tile_Entities.TETeleportationPylon.RejectPlacementFromNet(), Terraria.NPC.ReleaseNPC(), Terraria.GameContent.CoinLossRevengeSystem.RemoveExpiredOrInvalidMarkers(), Terraria.GameContent.PortalHelper.RemoveIntersectingPortals(), Terraria.WorldGen.ReplaceTIle_DoActualReplacement(), Terraria.NPC.RequestBuffRemoval(), Terraria.GameContent.Events.DD2Event.RequestToSkipWaitTime(), Terraria.UI.ChestUI.Restock(), Terraria.Main.SaveClothesWindow(), Terraria.UI.ItemSlot.SellOrTrash(), Terraria.NetMessage.SendAnglerQuest(), Terraria.NetMessage.SendCoinLossRevengeMarker(), Terraria.GameContent.Events.CreditsRollEvent.SendCreditsRollRemainingTimeToPlayer(), Terraria.NetMessage.SendNPCHousesAndTravelShop(), Terraria.NetMessage.SendObjectPlacement(), Terraria.NetMessage.SendPlayerDeath(), Terraria.NetMessage.SendPlayerHurt(), Terraria.NetMessage.SendSection(), Terraria.NetMessage.SendTemporaryAnimation(), Terraria.NetMessage.SendTileSquare(), Terraria.NetMessage.SendTravelShop(), Terraria.NetMessage.sendWater(), Terraria.Chest.ServerPlaceItem(), Terraria.GameContent.Events.DD2Event.SetEnemySpawningOnHold(), Terraria.Mount.SetMount(), Terraria.Player.ShadowDodge(), Terraria.Player.Shellphone_Spawn(), Terraria.Projectile.Shimmer(), Terraria.WorldGen.ShootFromCannon(), Terraria.GameContent.PlayerSittingHelper.SitDown(), Terraria.GameContent.PlayerSittingHelper.SitUp(), Terraria.WorldGen.SmashAltar(), Terraria.Tile.SmoothSlope(), Terraria.UI.ItemSorting.SortChest(), Terraria.Player.Spawn(), Terraria.NPC.SpawnBoss(), Terraria.GameContent.CoinLossRevengeSystem.RevengeMarker.SpawnEnemy(), Terraria.NPC.SpawnFaelings(), Terraria.NPC.SpawnMechQueen(), Terraria.NPC.SpawnNPC(), Terraria.NPC.SpawnSkeletron(), Terraria.WorldGen.SpawnTownNPC(), Terraria.DelegateMethods.SpreadDirt(), Terraria.Main.startDedInputCallBack(), Terraria.WorldGen.StartImpendingDoom(), Terraria.GameContent.Events.DD2Event.StartInvasion(), Terraria.GameContent.PlayerSleepingHelper.StartSleeping(), Terraria.Main.StartSlimeRain(), Terraria.Player.StickyMovement(), Terraria.GameContent.Events.DD2Event.StopInvasion(), Terraria.GameContent.PlayerSleepingHelper.StopSleeping(), Terraria.Main.StopSlimeRain(), Terraria.Main.SubmitSignText(), Terraria.GameContent.Events.DD2Event.SummonCrystal(), Terraria.Main.Sundialing(), Terraria.UI.ItemSlot.SwapEquip(), Terraria.Collision.SwitchTiles(), Terraria.Main.SyncAnInvasion(), Terraria.GameContent.Events.DD2Event.SyncInvasionProgress(), Terraria.ObjectData.TileObjectData.SyncObjectPlacement(), Terraria.NetMessage.SyncOnePlayer(), Terraria.NetMessage.SyncOnePlayer_ItemArray(), Terraria.Wiring.Teleport(), Terraria.NPC.Teleport(), Terraria.Player.TeleportationPotion(), Terraria.Player.TileInteractionsUse(), Terraria.WorldGen.ToggleGemLock(), Terraria.GameContent.Events.LanternNight.ToggleManualLanterns(), Terraria.GameContent.Events.BirthdayParty.ToggleManualParty(), Terraria.Player.TorchAttack(), Terraria.NPC.Transform(), Terraria.NPC.TransformCopperSlime(), Terraria.NPC.TransformElderSlime(), Terraria.WorldGen.TreeGrowFXCheck(), Terraria.WorldGen.TriggerLunarApocalypse(), Terraria.GameContent.DoorOpeningHelper.CommonDoorOpeningInfoProvider.TryCloseDoor(), Terraria.GameContent.DoorOpeningHelper.TallGateOpeningInfoProvider.TryCloseDoor(), Terraria.Player.TryDroppingSingleItem(), Terraria.GameContent.Tile_Entities.TEDisplayDoll.TryFitting(), Terraria.GameContent.Tile_Entities.TEHatRack.TryFitting(), Terraria.GameContent.PortalHelper.TryGoingThroughPortals(), Terraria.WorldGen.TryKillingReplaceableTile(), Terraria.WorldGen.TryKillingTreesAboveIfTheyWouldBecomeInvalid(), Terraria.Player.TryLandingOnDetonator(), Terraria.GameContent.DoorOpeningHelper.CommonDoorOpeningInfoProvider.TryOpenDoor(), Terraria.GameContent.DoorOpeningHelper.TallGateOpeningInfoProvider.TryOpenDoor(), Terraria.UI.ItemSlot.TryPickupDyeToCursor(), Terraria.GameContent.Tile_Entities.TEFoodPlatter.TryPlacing(), Terraria.GameContent.Tile_Entities.TEItemFrame.TryPlacing(), Terraria.GameContent.Tile_Entities.TEWeaponsRack.TryPlacing(), Terraria.UI.ChestUI.TryPlacingInChest(), Terraria.NetMessage.TrySendData(), Terraria.GameContent.Events.MysticLogFairiesEvent.TrySpawningFairies(), Terraria.GameContent.Events.CreditsRollEvent.TryStartingCreditsRoll(), Terraria.Player.TrySyncingInput(), Terraria.Main.TrySyncingItemArray(), Terraria.Main.TrySyncingMyPlayer(), Terraria.NPC.TrySyncingUniqueTownNPCData(), Terraria.NPC.TryTeleportingCaughtMysticFrog(), Terraria.Player.TryToPoop(), Terraria.Player.UnityTeleport(), Terraria.NPC.UnlockOrExchangePet(), Terraria.WorldGen.UnspawnTravelNPC(), Terraria.Player.Update(), Terraria.Projectile.Update(), Terraria.Main.UpdateClient(), Terraria.Main.updateCloudLayer(), Terraria.GameContent.Tile_Entities.TELogicSensor.UpdateEndInternal(), Terraria.NPC.UpdateHomeTileState(), Terraria.Main.UpdateInvasion(), Terraria.Item.UpdateItem(), Terraria.Player.UpdateLuck(), Terraria.NPC.UpdateNetworkCode(), Terraria.NPC.UpdateNPC(), Terraria.NPC.UpdateNPC_BuffApplyDOTs(), Terraria.NPC.UpdateNPC_BuffClearExpiredBuffs(), Terraria.Main.UpdateServer(), Terraria.GameContent.Events.BirthdayParty.UpdateTime(), Terraria.GameContent.Events.DD2Event.UpdateTime(), Terraria.GameContent.Events.LanternNight.UpdateTime(), Terraria.Main.UpdateTime(), Terraria.Main.UpdateTime_StartDay(), Terraria.Main.UpdateTime_StartNight(), Terraria.Main.UpdateWeather(), Terraria.WorldGen.UpdateWorld_OvergroundTile(), Terraria.WorldGen.UpdateWorld_UndergroundTile(), Terraria.Projectile.UseGasTrapInChest(), and Terraria.GameContent.Events.DD2Event.WipeEntities().