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

◆ HitEffect()

void Terraria.NPC.HitEffect ( int hitDirection = 0,
double dmg = 10::0 )
inline

Definition at line 78386 of file NPC.cs.

78387 {
78388 //IL_24fe: Unknown result type (might be due to invalid IL or missing references)
78389 //IL_251d: Unknown result type (might be due to invalid IL or missing references)
78390 //IL_26fd: Unknown result type (might be due to invalid IL or missing references)
78391 if (!active)
78392 {
78393 return;
78394 }
78395 if (townNPC && life <= 0 && UsesPartyHat())
78396 {
78398 bool flag = true;
78399 switch (type)
78400 {
78401 case 38:
78402 Gore.NewGore(position, velocity, IsShimmerVariant ? 1298 : 927);
78403 break;
78404 case 207:
78405 Gore.NewGore(position, velocity, IsShimmerVariant ? 1305 : 928);
78406 break;
78407 case 17:
78408 Gore.NewGore(position, velocity, IsShimmerVariant ? 1321 : 929);
78409 break;
78410 case 18:
78411 Gore.NewGore(position, velocity, IsShimmerVariant ? 1325 : 930);
78412 break;
78413 case 227:
78414 Gore.NewGore(position, velocity, IsShimmerVariant ? 1331 : 931);
78415 break;
78416 case 229:
78417 if (!IsShimmerVariant)
78418 {
78419 Gore.NewGore(position, velocity, 932);
78420 }
78421 break;
78422 case 142:
78423 Gore.NewGore(position, velocity, IsShimmerVariant ? 1339 : 933);
78424 break;
78425 case 453:
78426 Gore.NewGore(position, velocity, IsShimmerVariant ? 1343 : 934);
78427 break;
78428 case 178:
78429 Gore.NewGore(position, velocity, IsShimmerVariant ? 1348 : 935);
78430 break;
78431 case 353:
78432 Gore.NewGore(position, velocity, IsShimmerVariant ? 1351 : 936);
78433 break;
78434 case 368:
78435 Gore.NewGore(position, velocity, IsShimmerVariant ? 1363 : 937);
78436 break;
78437 case 108:
78438 Gore.NewGore(position, velocity, IsShimmerVariant ? 1373 : 938);
78439 break;
78440 case 588:
78441 Gore.NewGore(position, velocity, IsShimmerVariant ? 1311 : 1112);
78442 break;
78443 default:
78444 flag = false;
78445 break;
78446 }
78447 if (flag)
78448 {
78449 int num = 926;
78450 switch (GetPartyHatColor())
78451 {
78452 case PartyHatColor.Cyan:
78453 num = 940;
78454 break;
78455 case PartyHatColor.Pink:
78456 num = 939;
78457 break;
78458 case PartyHatColor.Purple:
78459 num = 941;
78460 break;
78461 case PartyHatColor.White:
78462 num = 942;
78463 break;
78464 }
78465 Gore.NewGore(position, velocity, num);
78466 }
78467 }
78468 if (daybreak && life <= 0)
78469 {
78470 Rectangle hitbox = base.Hitbox;
78471 for (int i = 0; i < 20; i++)
78472 {
78473 int num2 = Utils.SelectRandom<int>(Main.rand, 6, 259, 158);
78474 int num3 = Dust.NewDust(hitbox.TopLeft(), width, height, num2, 0f, -2.5f);
78475 Main.dust[num3].alpha = 200;
78476 Dust dust = Main.dust[num3];
78477 dust.velocity *= 1.4f;
78478 dust = Main.dust[num3];
78479 dust.scale += Main.rand.NextFloat();
78480 }
78481 if (Main.netMode != 1)
78482 {
78483 for (int j = 0; j < 200; j++)
78484 {
78485 NPC nPC = Main.npc[j];
78486 if (nPC.active && !nPC.buffImmune[189] && Distance(nPC.Center) < 100f && !nPC.dontTakeDamage && nPC.lifeMax > 5 && !nPC.friendly && !nPC.townNPC)
78487 {
78488 nPC.AddBuff(189, 300);
78489 }
78490 }
78491 }
78492 }
78493 if (type == 686 && life <= 0)
78494 {
78495 short num4 = 1143;
78496 Vector2 vector = base.Bottom + (-Vector2.UnitY * 50f).RotatedBy(rotation);
78497 for (int k = 0; k < 3; k++)
78498 {
78499 Vector2 vector2 = vector + Main.rand.NextVector2Circular(15f, 15f);
78500 Gore gore = Gore.NewGorePerfect(vector2, Main.rand.NextVector2Circular(2f, 2f), num4 + Main.rand.Next(3));
78501 gore.velocity.Y -= Main.rand.NextFloat();
78502 Gore gore2 = gore;
78503 gore2.velocity *= 4f;
78504 }
78505 for (int l = 0; l < 1; l++)
78506 {
78507 Vector2 vector3 = base.Bottom + (-Vector2.UnitY * 50f).RotatedBy(rotation) + Main.rand.NextVector2Circular(5f, 5f);
78508 Gore gore3 = Gore.NewGorePerfect(vector3, Main.rand.NextVector2Circular(2f, 2f), 1146);
78509 gore3.velocity.Y -= Main.rand.NextFloat();
78510 Gore gore2 = gore3;
78511 gore2.velocity *= 4f;
78512 }
78513 if (Main.netMode != 1)
78514 {
78515 Vector2 vector4 = base.Bottom + new Vector2(0f, 48f);
78517 Transform(680);
78518 position = vector4;
78519 velocity = vector5;
78520 netUpdate = true;
78522 {
78524 if (Main.netMode == 2)
78525 {
78526 NetMessage.SendData(7);
78527 }
78528 }
78529 }
78530 }
78531 if (type == 594 && life <= 0)
78532 {
78533 int num5 = 1125;
78534 num5 += (int)(ai[2] - 1f) * 3;
78535 Vector2 vector6 = base.Bottom + (-Vector2.UnitY * 50f).RotatedBy(rotation);
78536 for (int m = 0; m < 3; m++)
78537 {
78538 Vector2 vector7 = vector6 + Main.rand.NextVector2Circular(15f, 15f);
78539 Gore gore4 = Gore.NewGorePerfect(vector7, Main.rand.NextVector2Circular(2f, 2f), num5 + Main.rand.Next(3));
78540 gore4.velocity.Y -= Main.rand.NextFloat();
78541 Gore gore2 = gore4;
78542 gore2.velocity *= 4f;
78543 }
78544 for (int n = 0; n < 1; n++)
78545 {
78546 Vector2 vector8 = base.Bottom + (-Vector2.UnitY * 50f).RotatedBy(rotation) + Main.rand.NextVector2Circular(5f, 5f);
78547 Gore gore5 = Gore.NewGorePerfect(vector8, Main.rand.NextVector2Circular(2f, 2f), 1146);
78548 gore5.velocity.Y -= Main.rand.NextFloat();
78549 Gore gore2 = gore5;
78550 gore2.velocity *= 4f;
78551 }
78553 if (nPC2 != null)
78554 {
78555 nPC2.ai[0] = 0f;
78556 nPC2.position.Y -= 10f;
78557 nPC2.netUpdate = true;
78558 }
78559 }
78560 if (type == 661)
78561 {
78562 if (life > 0)
78563 {
78564 for (int num6 = 0; (double)num6 < dmg / (double)lifeMax * 100.0; num6++)
78565 {
78566 if (Main.rand.Next(5) == 0)
78567 {
78568 int num7 = 1;
78569 Color newColor = Main.hslToRgb((float)num6 / 100f % 1f, 1f, 0.5f) * 0.5f;
78570 int num8 = Dust.NewDust(position, width, height, 267, 0f, 0f, 0, newColor);
78571 Main.dust[num8].position = base.Center + Main.rand.NextVector2Circular(width, height);
78572 Main.dust[num8].velocity = Main.dust[num8].position - base.Center;
78573 Main.dust[num8].noGravity = true;
78574 Main.dust[num8].fadeIn = 0.6f + Main.rand.NextFloat() * 0.7f * (float)num7;
78575 Main.dust[num8].scale = 0.35f;
78576 if (num8 != 6000)
78577 {
78578 Dust dust2 = Dust.CloneDust(num8);
78579 Dust dust = dust2;
78580 dust.scale /= 2f;
78581 dust = dust2;
78582 dust.fadeIn *= 0.85f;
78583 dust2.color = new Color(255, 255, 255, 255) * 0.5f;
78584 }
78585 }
78586 }
78587 }
78588 else
78589 {
78590 for (int num9 = 0; (float)num9 < 100f; num9++)
78591 {
78592 if (Main.rand.Next(5) == 0)
78593 {
78594 int num10 = 1;
78595 Color newColor2 = Main.hslToRgb((float)num9 / 100f % 1f, 1f, 0.5f) * 0.5f;
78596 int num11 = Dust.NewDust(position, width, height, 267, 0f, 0f, 0, newColor2);
78597 Main.dust[num11].position = base.Center + Main.rand.NextVector2Circular(width, height);
78598 Main.dust[num11].velocity = (Main.dust[num11].position - base.Center) * 0.6f;
78599 Main.dust[num11].noGravity = true;
78600 Main.dust[num11].fadeIn = 0.7f + Main.rand.NextFloat() * 1.1f * (float)num10;
78601 Main.dust[num11].scale = 0.35f;
78602 if (num11 != 6000)
78603 {
78604 Dust dust3 = Dust.CloneDust(num11);
78605 Dust dust = dust3;
78606 dust.scale /= 2f;
78607 dust = dust3;
78608 dust.fadeIn *= 0.85f;
78609 dust3.color = new Color(255, 255, 255, 255) * 0.5f;
78610 }
78611 }
78612 }
78613 }
78614 }
78615 if (type == 521)
78616 {
78617 if (life > 0)
78618 {
78619 for (int num12 = 0; (double)num12 < dmg / (double)lifeMax * 200.0; num12++)
78620 {
78621 Dust dust4 = Dust.NewDustDirect(position, width, height, 228, 6 * hitDirection, velocity.Y, 0, Color.Transparent, 3f);
78622 dust4.noGravity = true;
78623 Dust dust = dust4;
78624 dust.velocity *= 5f;
78625 }
78626 }
78627 else
78628 {
78629 for (int num13 = 0; (float)num13 < 200f; num13++)
78630 {
78631 Dust dust5 = Dust.NewDustDirect(position, width, height, 228, 6 * hitDirection, velocity.Y, 0, Color.Transparent, 3f);
78632 dust5.noGravity = true;
78633 Dust dust = dust5;
78634 dust.velocity *= 5f;
78635 }
78636 }
78637 }
78638 if (type == 668)
78639 {
78640 if (life > 0)
78641 {
78642 for (int num14 = 0; (double)num14 < dmg / (double)lifeMax * 100.0; num14++)
78643 {
78644 Dust.NewDust(position, width, height, 5, hitDirection, -1f, 0, default(Color), 1.2f);
78645 }
78646 }
78647 else
78648 {
78649 int num15 = 15;
78651 for (int num16 = 0; num16 < 120; num16++)
78652 {
78653 int num17 = Dust.NewDust(vector9, width + num15 * 2, height + num15 * 2, 5, 0f, 0f, 0, default(Color), 1.5f);
78654 Main.dust[num17].velocity = Main.rand.NextVector2Circular(4f, 4f);
78655 }
78656 Vector2 vector10 = velocity * 0.6f;
78657 Gore.NewGore(base.Bottom + new Vector2(-10f, 0f), vector10, 1274, scale);
78658 Gore.NewGore(base.Bottom + new Vector2(10f, 0f), vector10, 1274, scale);
78659 Gore.NewGore(base.Center, vector10, 1272, scale);
78660 Gore.NewGore(base.Center + new Vector2(-10f, 0f), vector10, 1273, scale);
78661 Gore.NewGore(base.Center + new Vector2(10f, 0f), vector10, 1273, scale);
78662 Gore.NewGore(base.Top, vector10, 1270, scale);
78663 Gore.NewGore(base.Top, vector10, 1271, scale);
78664 }
78665 }
78666 if (type == 636)
78667 {
78668 if (life > 0)
78669 {
78670 for (int num18 = 0; (double)num18 < dmg / (double)lifeMax * 100.0; num18++)
78671 {
78672 if (Main.rand.Next(2) == 0)
78673 {
78674 Dust.NewDust(position, width, height, 67, hitDirection, -1f);
78675 }
78676 else
78677 {
78678 Dust.NewDust(position, width, height, 69, hitDirection, -1f);
78679 }
78680 }
78681 }
78682 else
78683 {
78684 for (int num19 = 0; num19 < 50; num19++)
78685 {
78686 if (Main.rand.Next(2) == 0)
78687 {
78688 Dust.NewDust(position, width, height, 67, hitDirection, -1f);
78689 }
78690 else
78691 {
78692 Dust.NewDust(position, width, height, 69, 2 * hitDirection, -1f);
78693 }
78694 }
78695 Vector2 vector11 = velocity * 0.6f;
78696 Gore.NewGore(position + new Vector2(10f, -20f), vector11, 1262, scale);
78697 Gore.NewGore(position + new Vector2(10f, 40f), vector11, 1263, scale);
78698 Gore.NewGore(position + new Vector2(50f, 20f), vector11, 1264, scale);
78699 Gore.NewGore(position + new Vector2(-10f, -20f), vector11, 1265, scale);
78700 Gore.NewGore(position, vector11, 1266, scale);
78701 Gore.NewGore(position + new Vector2(-20f, -20f), vector11, 1267, scale);
78702 Gore.NewGore(position + new Vector2(-20f, 10f), vector11, 1268, scale);
78703 Gore.NewGore(position + new Vector2(60f, -20f), vector11, 1267, scale);
78704 Gore.NewGore(position + new Vector2(60f, 10f), vector11, 1268, scale);
78705 }
78706 }
78707 if (type == 657)
78708 {
78709 if (life <= 0)
78710 {
78711 Gore.NewGore(position, velocity, 1259, 0.8f);
78712 Gore.NewGore(position + base.Size * 0.5f, velocity, 1259, 0.8f);
78713 Gore.NewGore(position, velocity, 1258, scale);
78714 int num20 = 10;
78715 for (int num21 = 0; num21 < 150; num21++)
78716 {
78718 newColor3.A = 200;
78719 int num22 = Dust.NewDust(position - new Vector2(num20, num20), width + num20 * 2, height + num20 * 2, 4, 8f * Main.rand.NextFloatDirection(), -2f + 6f * Main.rand.NextFloatDirection(), 50, newColor3, 1f + Main.rand.NextFloat() * 0.5f);
78720 Dust dust = Main.dust[num22];
78721 dust.velocity *= 0.65f;
78722 dust = Main.dust[num22];
78723 dust.velocity += velocity * 0.5f;
78724 if (Main.rand.Next(5) == 0)
78725 {
78726 Main.dust[num22].noGravity = true;
78727 dust = Main.dust[num22];
78728 dust.scale *= 1.2f;
78729 }
78730 }
78731 }
78732 else
78733 {
78734 for (int num23 = 0; num23 < 12; num23++)
78735 {
78737 newColor4.A = 150;
78738 int num24 = Dust.NewDust(position, width, height, 4, 2 * hitDirection, -1f, 50, newColor4);
78739 Dust dust = Main.dust[num24];
78740 dust.velocity *= 0.3f;
78741 dust = Main.dust[num24];
78742 dust.velocity += velocity * 0.3f;
78743 if (Main.rand.Next(3) == 0)
78744 {
78745 Main.dust[num24].noGravity = true;
78746 dust = Main.dust[num24];
78747 dust.scale *= 1.2f;
78748 }
78749 }
78750 }
78751 }
78752 if (type >= 658 && type <= 660)
78753 {
78754 int num25 = 7;
78755 float num26 = 1f;
78756 int num27 = 4;
78757 Color newColor5 = new Color(78, 136, 255, 150);
78758 if (type == 659)
78759 {
78760 num27 = 243;
78761 newColor5 = default(Color);
78762 }
78763 if (type == 660)
78764 {
78765 newColor5 = new Color(150, 100, 200, 150);
78766 }
78767 if (life <= 0)
78768 {
78769 num26 = 1.5f;
78770 num25 = 40;
78771 if (type == 660)
78772 {
78773 Gore.NewGore(position, velocity, 1260, scale);
78774 Gore.NewGore(position, velocity, 1260, scale);
78775 }
78776 }
78777 for (int num28 = 0; num28 < num25; num28++)
78778 {
78779 int num29 = Dust.NewDust(position, width, height, num27, 2 * hitDirection, -1f, 80, newColor5, num26);
78780 if (Main.rand.Next(3) != 0)
78781 {
78782 Main.dust[num29].noGravity = true;
78783 }
78784 }
78785 }
78786 if (type == 667)
78787 {
78788 int num30 = 7;
78789 float num31 = 1.1f;
78790 int num32 = 10;
78791 Color newColor6 = default(Color);
78792 if (life <= 0)
78793 {
78794 num31 = 1.5f;
78795 num30 = 40;
78796 for (int num33 = 0; num33 < 8; num33++)
78797 {
78798 int num34 = Gore.NewGore(new Vector2(position.X, base.Center.Y - 10f), Vector2.Zero, 1218);
78799 Main.gore[num34].velocity = new Vector2((float)Main.rand.Next(1, 10) * 0.3f * 2.5f * (float)hitDirection, 0f - (3f + (float)Main.rand.Next(4) * 0.3f));
78800 }
78801 }
78802 else
78803 {
78804 for (int num35 = 0; num35 < 3; num35++)
78805 {
78806 int num36 = Gore.NewGore(new Vector2(position.X, base.Center.Y - 10f), Vector2.Zero, 1218);
78807 Main.gore[num36].velocity = new Vector2((float)Main.rand.Next(1, 10) * 0.3f * 2f * (float)hitDirection, 0f - (2.5f + (float)Main.rand.Next(4) * 0.3f));
78808 }
78809 }
78810 for (int num37 = 0; num37 < num30; num37++)
78811 {
78812 int num38 = Dust.NewDust(position, width, height, num32, 2 * hitDirection, -1f, 80, newColor6, num31);
78813 if (Main.rand.Next(3) != 0)
78814 {
78815 Main.dust[num38].noGravity = true;
78816 }
78817 }
78818 }
78819 if (type == 676)
78820 {
78821 int num39 = 8;
78822 float num40 = 1.1f;
78823 short num41 = 310;
78824 if (life <= 0)
78825 {
78826 num40 = 1.5f;
78827 num39 = 40;
78828 }
78829 for (int num42 = 0; num42 < num39; num42++)
78830 {
78831 Dust dust6 = Main.dust[Dust.NewDust(position, width, height, num41, 2 * hitDirection, -1f, 80, default(Color), num40)];
78832 if (Main.rand.Next(3) != 0)
78833 {
78834 dust6.noGravity = true;
78835 }
78836 Dust dust = dust6;
78837 dust.velocity *= 1.5f;
78838 dust = dust6;
78839 dust.velocity += velocity * 0.1f;
78840 }
78841 }
78842 if (type == 552 || type == 553 || type == 554)
78843 {
78844 if (life > 0)
78845 {
78846 for (int num43 = 0; (double)num43 < dmg / (double)lifeMax * 20.0; num43++)
78847 {
78848 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
78849 }
78850 }
78851 else
78852 {
78853 for (int num44 = 0; (float)num44 < 20f; num44++)
78854 {
78855 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
78856 }
78857 int num45 = 983;
78858 if (type == 553)
78859 {
78860 num45 = 1067;
78861 }
78862 else if (type == 554)
78863 {
78864 num45 = 1071;
78865 }
78866 Gore.NewGore(position, velocity, num45, scale);
78867 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, num45 + 3, scale);
78868 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, num45 + 2, scale);
78869 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, num45 + 1, scale);
78870 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, num45 + 1, scale);
78871 }
78872 }
78873 else if (type == 561 || type == 562 || type == 563)
78874 {
78875 if (life > 0)
78876 {
78877 for (int num46 = 0; (double)num46 < dmg / (double)lifeMax * 20.0; num46++)
78878 {
78879 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
78880 }
78881 }
78882 else
78883 {
78884 for (int num47 = 0; (float)num47 < 20f; num47++)
78885 {
78886 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
78887 }
78888 int num48 = 987;
78889 if (type == 562)
78890 {
78891 num48 = 1055;
78892 }
78893 else if (type == 563)
78894 {
78895 num48 = 1061;
78896 }
78897 Gore.NewGore(position, velocity, num48 + 3, scale);
78898 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, num48, scale);
78899 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, num48 + 4, scale);
78900 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, num48 + 5, scale);
78901 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, num48 + 2, scale);
78902 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, num48 + 1, scale);
78903 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, num48 + 1, scale);
78904 }
78905 }
78906 else if (type == 555 || type == 556 || type == 557)
78907 {
78908 if (life > 0)
78909 {
78910 for (int num49 = 0; (double)num49 < dmg / (double)lifeMax * 20.0; num49++)
78911 {
78912 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
78913 }
78914 }
78915 else
78916 {
78917 int num50 = 1031;
78918 if (type == 556)
78919 {
78920 num50 = 1034;
78921 }
78922 if (type == 557)
78923 {
78924 num50 = 1037;
78925 }
78926 for (int num51 = 0; (float)num51 < 20f; num51++)
78927 {
78928 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
78929 }
78930 Gore.NewGore(new Vector2(position.X, position.Y), velocity, num50, scale);
78931 Gore.NewGore(new Vector2(position.X + 10f, position.Y + 20f), velocity, num50 + 1, scale);
78932 Gore.NewGore(new Vector2(position.X + 10f, position.Y + 30f), velocity, num50 + 2, scale);
78933 }
78934 }
78935 else if (type == 551)
78936 {
78937 int num52 = (int)((float)life / (float)lifeMax * 100f);
78938 int num53 = (int)(((double)life + dmg) / (double)(float)lifeMax * 100.0);
78939 if (num52 != num53 && life > 0 && Main.netMode != 1)
78940 {
78942 }
78943 if (life > 0)
78944 {
78945 for (int num54 = 0; (double)num54 < dmg / (double)lifeMax * 20.0; num54++)
78946 {
78947 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
78948 }
78949 }
78950 else
78951 {
78952 for (int num55 = 0; (float)num55 < 20f; num55++)
78953 {
78954 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
78955 }
78956 if (spriteDirection != -1)
78957 {
78958 Gore.NewGore(position + new Vector2(0f, 54f), velocity, 1079, scale);
78959 Gore.NewGore(position + new Vector2(72f, 90f), velocity, 1080, scale);
78960 Gore.NewGore(position + new Vector2(102f, 94f), velocity, 1080, scale);
78961 Gore.NewGore(position + new Vector2(178f, 0f), velocity, 1081, scale);
78962 Gore.NewGore(position + new Vector2(136f, 12f), velocity, 1082, scale);
78963 Gore.NewGore(position + new Vector2(82f, 18f), velocity, 1083, scale);
78964 Gore.NewGore(position + new Vector2(100f, 26f), velocity, 1084, scale);
78965 Gore.NewGore(position + new Vector2(170f, 16f), velocity, 1085, scale);
78966 Gore.NewGore(position + new Vector2(190f, 10f), velocity, 1085, scale);
78967 Gore.NewGore(position + new Vector2(100f, 36f), velocity, 1086, scale);
78968 }
78969 else
78970 {
78971 Gore.NewGore(position + new Vector2(176f, 54f), velocity, 1079, scale);
78972 Gore.NewGore(position + new Vector2(158f, 90f), velocity, 1080, scale);
78973 Gore.NewGore(position + new Vector2(128f, 94f), velocity, 1080, scale);
78974 Gore.NewGore(position + new Vector2(0f, 0f), velocity, 1081, scale);
78975 Gore.NewGore(position + new Vector2(60f, 12f), velocity, 1082, scale);
78976 Gore.NewGore(position + new Vector2(88f, 18f), velocity, 1083, scale);
78977 Gore.NewGore(position + new Vector2(86f, 26f), velocity, 1084, scale);
78978 Gore.NewGore(position + new Vector2(40f, 16f), velocity, 1085, scale);
78979 Gore.NewGore(position + new Vector2(20f, 10f), velocity, 1085, scale);
78980 Gore.NewGore(position + new Vector2(142f, 36f), velocity, 1086, scale);
78981 }
78982 }
78983 }
78984 else if (type == 572 || type == 573)
78985 {
78986 if (life > 0)
78987 {
78988 for (int num56 = 0; (double)num56 < dmg / (double)lifeMax * 20.0; num56++)
78989 {
78990 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
78991 }
78992 }
78993 else
78994 {
78997 for (int num57 = 0; (float)num57 < 20f; num57++)
78998 {
78999 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
79000 }
79001 Vector2 vector12 = base.Center - new Vector2(10f, 10f);
79002 Gore.NewGore(vector12, velocity, 993, scale);
79003 Gore.NewGore(new Vector2(vector12.X, vector12.Y + 20f), velocity, 996, scale);
79004 Gore.NewGore(new Vector2(vector12.X, vector12.Y + 20f), velocity, 995, scale);
79005 Gore.NewGore(new Vector2(vector12.X, vector12.Y + 34f), velocity, 994, scale);
79006 Gore.NewGore(new Vector2(vector12.X, vector12.Y + 34f), velocity, 994, scale);
79007 }
79008 }
79009 else if (type == 574 || type == 575)
79010 {
79011 if (life > 0)
79012 {
79013 for (int num58 = 0; (double)num58 < dmg / (double)lifeMax * 20.0; num58++)
79014 {
79015 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
79016 }
79017 }
79018 else
79019 {
79021 for (int num59 = 0; (float)num59 < 20f; num59++)
79022 {
79023 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
79024 }
79025 int num60 = 1050;
79026 Vector2 vector13 = base.Center - new Vector2(30f, 10f);
79027 Gore.NewGore(new Vector2(vector13.X, vector13.Y + 10f), velocity, num60, scale);
79028 Gore.NewGore(new Vector2(vector13.X, vector13.Y + 30f), velocity, num60 + 1, scale);
79029 Gore.NewGore(new Vector2(vector13.X, vector13.Y + 30f), velocity, num60 + 2, scale);
79030 Gore.NewGore(new Vector2(vector13.X, vector13.Y + 0f), velocity, num60 + 3, scale);
79031 Gore.NewGore(new Vector2(vector13.X, vector13.Y + 0f), velocity, num60 + 4, scale);
79032 }
79033 }
79034 else if (type == 570 || type == 571)
79035 {
79036 if (life > 0)
79037 {
79038 for (int num61 = 0; (double)num61 < dmg / (double)lifeMax * 20.0; num61++)
79039 {
79040 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
79041 }
79042 }
79043 else
79044 {
79045 for (int num62 = 0; (float)num62 < 20f; num62++)
79046 {
79047 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
79048 }
79049 int num63 = ((type == 570) ? 1075 : 979);
79050 Gore.NewGore(position, velocity, num63, scale);
79051 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, num63 + 2, scale);
79052 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, num63 + 2, scale);
79053 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, num63 + 3, scale);
79054 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, num63 + 1, scale);
79055 }
79056 }
79057 else if (type == 568 || type == 569)
79058 {
79059 if (life > 0)
79060 {
79061 for (int num64 = 0; (double)num64 < dmg / (double)lifeMax * 20.0; num64++)
79062 {
79063 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
79064 }
79065 }
79066 else
79067 {
79068 for (int num65 = 0; (float)num65 < 20f; num65++)
79069 {
79070 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
79071 }
79072 Gore.NewGore(position, velocity, 1020, scale);
79073 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 1021, scale);
79074 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 1023, scale);
79075 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 1022, scale);
79076 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 1022, scale);
79077 }
79078 }
79079 else if (type == 558 || type == 559 || type == 560)
79080 {
79081 if (life > 0)
79082 {
79083 for (int num66 = 0; (double)num66 < dmg / (double)lifeMax * 20.0; num66++)
79084 {
79085 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
79086 }
79087 }
79088 else
79089 {
79090 for (int num67 = 0; (float)num67 < 20f; num67++)
79091 {
79092 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
79093 }
79094 int num68 = 974;
79095 if (type == 559)
79096 {
79097 num68 = 1040;
79098 }
79099 if (type == 560)
79100 {
79101 num68 = 1045;
79102 }
79103 Gore.NewGore(position, velocity, num68 + 2, scale);
79104 Gore.NewGore(new Vector2(position.X, position.Y + 10f), velocity, num68, scale);
79105 Gore.NewGore(new Vector2(position.X, position.Y + 10f), velocity, num68, scale);
79106 Gore.NewGore(new Vector2(position.X, position.Y + 10f), velocity, num68 + 4, scale);
79107 Gore.NewGore(new Vector2(position.X, position.Y + 24f), velocity, num68 + 1, scale);
79108 Gore.NewGore(new Vector2(position.X, position.Y + 24f), velocity, num68 + 3, scale);
79109 Gore.NewGore(new Vector2(position.X, position.Y + 24f), velocity, num68 + 3, scale);
79110 }
79111 }
79112 else if (type == 566 || type == 567)
79113 {
79114 if (life > 0)
79115 {
79116 for (int num69 = 0; (double)num69 < dmg / (double)lifeMax * 20.0; num69++)
79117 {
79118 Dust.NewDust(position, width, height, 236, hitDirection, -1f);
79119 }
79120 }
79121 else
79122 {
79123 for (int num70 = 0; (float)num70 < 20f; num70++)
79124 {
79125 Dust.NewDust(position, width, height, 236, hitDirection, -1f);
79126 }
79127 Gore.NewGore(position, velocity, 970, scale);
79128 if (Main.rand.Next(2) == 0)
79129 {
79130 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 972, scale);
79131 }
79132 if (Main.rand.Next(2) == 0)
79133 {
79134 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 972, scale);
79135 }
79136 if (Main.rand.Next(2) == 0)
79137 {
79138 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 973, scale);
79139 }
79140 if (Main.rand.Next(2) == 0)
79141 {
79142 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 973, scale);
79143 }
79144 if (Main.rand.Next(2) == 0)
79145 {
79146 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 971, scale);
79147 }
79148 if (Main.rand.Next(2) == 0)
79149 {
79150 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 971, scale);
79151 }
79152 }
79153 }
79154 else if (type == 576 || type == 577)
79155 {
79156 if (life > 0)
79157 {
79158 for (int num71 = 0; (double)num71 < dmg / (double)lifeMax * 20.0; num71++)
79159 {
79160 Dust.NewDust(position, width, height, 273, hitDirection, -1f);
79161 }
79162 }
79163 else
79164 {
79165 for (int num72 = 0; (float)num72 < 20f; num72++)
79166 {
79167 Dust.NewDust(position, width, height, 273, hitDirection, -1f);
79168 }
79169 if (spriteDirection == -1)
79170 {
79171 Gore.NewGore(position + new Vector2(0f, 0f), velocity, 1005 + ((Main.rand.Next(5) == 0) ? 1 : 0), scale);
79172 Gore.NewGore(position + new Vector2(18f, 28f), velocity, 1000, scale);
79173 int num73 = Gore.NewGore(position + new Vector2(-40f, 70f), velocity, 1001, scale);
79174 Main.gore[num73].rotation = (float)Math.PI;
79175 num73 = Gore.NewGore(position + new Vector2(4f, 28f), velocity, 1002, scale);
79176 Main.gore[num73].rotation = (float)Math.PI;
79177 Gore.NewGore(position + new Vector2(36f, 90f), velocity, 1003, scale);
79178 Gore.NewGore(position + new Vector2(32f, 90f), velocity, 1004, scale);
79179 }
79180 else
79181 {
79182 Gore.NewGore(position + new Vector2(48f, 0f), velocity, 1005 + ((Main.rand.Next(5) == 0) ? 1 : 0), scale);
79183 Gore.NewGore(position + new Vector2(22f, 28f), velocity, 1000, scale);
79184 Gore.NewGore(position + new Vector2(48f, 70f), velocity, 1001, scale);
79185 Gore.NewGore(position + new Vector2(4f, 28f), velocity, 1002, scale);
79186 Gore.NewGore(position + new Vector2(36f, 90f), velocity, 1003, scale);
79187 Gore.NewGore(position + new Vector2(32f, 90f), velocity, 1004, scale);
79188 }
79189 }
79190 }
79191 else if (type == 564 || type == 565)
79192 {
79193 if (life > 0)
79194 {
79195 for (int num74 = 0; (double)num74 < dmg / (double)lifeMax * 20.0; num74++)
79196 {
79197 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
79198 }
79199 }
79200 else
79201 {
79202 for (int num75 = 0; (float)num75 < 20f; num75++)
79203 {
79204 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
79205 }
79206 int num76 = 1009;
79207 Gore.NewGore(new Vector2(position.X, position.Y), velocity, num76, scale);
79208 Gore.NewGore(new Vector2(position.X, position.Y + 15f), velocity, num76 + 1, scale);
79209 Gore.NewGore(new Vector2(position.X, position.Y + 15f), velocity, num76 + 2, scale);
79210 Gore.NewGore(new Vector2(position.X, position.Y + 15f), velocity, num76 + 3, scale);
79211 Gore.NewGore(new Vector2(position.X - 20f, position.Y + 35f), velocity, num76 + 4, scale);
79212 Gore.NewGore(new Vector2(position.X, position.Y + 35f), velocity, num76 + 5, scale);
79213 Gore.NewGore(new Vector2(position.X, position.Y + 35f), velocity, num76 + 6, scale);
79214 Gore.NewGore(new Vector2(position.X, position.Y + 35f), velocity, num76 + 10, scale);
79215 Gore.NewGore(new Vector2(position.X, position.Y + 25f), velocity, num76 + 7, scale);
79216 Gore.NewGore(new Vector2(position.X, position.Y + 25f), velocity, num76 + 8, scale);
79217 Gore.NewGore(new Vector2(position.X, position.Y + 25f), velocity, num76 + 9, scale);
79218 }
79219 }
79220 else if (type == 578)
79221 {
79222 if (life > 0)
79223 {
79224 for (int num77 = 0; (double)num77 < dmg / (double)lifeMax * 20.0; num77++)
79225 {
79226 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
79227 }
79228 }
79229 else
79230 {
79231 for (int num78 = 0; (float)num78 < 20f; num78++)
79232 {
79233 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
79234 }
79235 Gore.NewGore(position, velocity, 999, scale);
79236 Gore.NewGore(new Vector2(position.X, position.Y + 10f), velocity, 998, scale);
79237 Gore.NewGore(new Vector2(position.X, position.Y + 10f), velocity, 998, scale);
79238 Gore.NewGore(new Vector2(position.X, position.Y + 10f), velocity, 997, scale);
79239 }
79240 }
79241 else if (type == 620)
79242 {
79243 if (life > 0)
79244 {
79245 for (int num79 = 0; (double)num79 < dmg / (double)lifeMax * 150.0; num79++)
79246 {
79247 Dust dust7 = Dust.NewDustDirect(position, width, height, 5, hitDirection, -1f);
79248 Dust dust = dust7;
79249 dust.velocity *= 2.5f;
79250 dust7.scale = 1.7f;
79251 }
79252 }
79253 else
79254 {
79255 for (int num80 = 0; (float)num80 < 150f; num80++)
79256 {
79257 Dust dust8 = Dust.NewDustDirect(position, width, height, 5, hitDirection, -1f);
79258 Dust dust = dust8;
79259 dust.velocity *= 2.5f;
79260 dust8.scale = 1.7f;
79261 }
79262 int num81 = 1183;
79263 Gore.NewGore(position, velocity, num81, scale);
79264 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, num81 + 2, scale);
79265 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, num81 + 3, scale);
79266 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, num81 + 1, scale);
79267 }
79268 }
79269 else if (type == 619)
79270 {
79271 if (life > 0)
79272 {
79273 for (int num82 = 0; (double)num82 < dmg / (double)lifeMax * 150.0; num82++)
79274 {
79275 Dust dust9 = Dust.NewDustDirect(position, width, height, 5, hitDirection, -1f);
79276 Dust dust = dust9;
79277 dust.velocity *= 2.5f;
79278 dust9.fadeIn = 1.7f;
79279 }
79280 }
79281 else
79282 {
79283 for (int num83 = 0; (float)num83 < 150f; num83++)
79284 {
79285 Dust dust10 = Dust.NewDustDirect(position, width, height, 5, hitDirection, -1f);
79286 Dust dust = dust10;
79287 dust.velocity *= 2.5f;
79288 dust10.fadeIn = 1.7f;
79289 }
79290 int num84 = 1179;
79291 Gore.NewGore(position, velocity, num84, scale);
79292 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, num84 + 2, scale);
79293 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, num84 + 3, scale);
79294 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, num84 + 1, scale);
79295 }
79296 }
79297 else if (type == 618)
79298 {
79299 if (life > 0)
79300 {
79301 for (int num85 = 0; (double)num85 < dmg / (double)lifeMax * 200.0; num85++)
79302 {
79303 Dust dust11 = Dust.NewDustDirect(position, width, height, 5, hitDirection, -1f);
79304 Dust dust = dust11;
79305 dust.velocity *= 2.5f;
79306 dust11.scale = 2f;
79307 }
79308 }
79309 else
79310 {
79311 for (int num86 = 0; (float)num86 < 200f; num86++)
79312 {
79313 Dust dust12 = Dust.NewDustDirect(position, width, height, 5, hitDirection, -1f);
79314 Dust dust = dust12;
79315 dust.velocity *= 2.5f;
79316 dust12.scale = 2.5f;
79317 }
79318 int num87 = 1172;
79319 Gore.NewGore(new Vector2(base.Right.X - 30f, position.Y), velocity, num87, scale);
79320 Gore.NewGore(position, velocity, num87, scale);
79321 Gore.NewGore(new Vector2(base.Right.X - 30f, position.Y), velocity, num87 + 1, scale);
79322 Gore.NewGore(position, velocity, num87 + 1, scale);
79323 Gore.NewGore(position, velocity, num87 + 2, scale);
79324 Gore.NewGore(position, velocity, num87 + 3, scale);
79325 Gore.NewGore(position, velocity, num87 + 4, scale);
79326 Gore.NewGore(position, velocity, num87 + 4, scale);
79327 Gore.NewGore(position, velocity, num87 + 5, scale);
79328 Gore.NewGore(position, velocity, num87 + 5, scale);
79329 Gore.NewGore(position, velocity, num87 + 6, scale);
79330 Gore.NewGore(position, velocity, num87 + 6, scale);
79331 }
79332 }
79333 else if (type == 541)
79334 {
79335 Color color = new Color(222, 108, 48) * 0.7f;
79336 if (life > 0)
79337 {
79338 for (int num88 = 0; (double)num88 < dmg / (double)lifeMax * 200.0; num88++)
79339 {
79340 Dust dust13 = Main.dust[Dust.NewDust(position, width, height, 268)];
79341 dust13.color = color;
79342 dust13.noGravity = true;
79343 dust13.scale = 1.5f;
79344 dust13.fadeIn = 0.7f;
79345 Dust dust = dust13;
79346 dust.velocity *= 3f;
79347 dust13 = Main.dust[Dust.NewDust(position, width, height, 268)];
79348 dust13.color = color;
79349 dust13.noGravity = true;
79350 dust13.scale = 1.5f;
79351 dust13.fadeIn = 0.7f;
79352 dust = dust13;
79353 dust.velocity *= 3f;
79354 }
79355 }
79356 else
79357 {
79358 for (int num89 = 0; num89 < 30; num89++)
79359 {
79360 Dust dust14 = Main.dust[Dust.NewDust(position, width, height, 268)];
79361 dust14.color = color;
79362 dust14.noGravity = true;
79363 dust14.scale = 1.5f;
79364 dust14.fadeIn = 0.7f;
79365 Dust dust = dust14;
79366 dust.velocity *= 3f;
79367 dust14 = Main.dust[Dust.NewDust(position, width, height, 268)];
79368 dust14.color = color;
79369 dust14.noGravity = true;
79370 dust14.scale = 1.5f;
79371 dust14.fadeIn = 0.7f;
79372 dust = dust14;
79373 dust.velocity *= 3f;
79374 }
79375 Gore.NewGore(position, velocity, 960, scale);
79376 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 961, scale);
79377 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 963, scale);
79378 Gore.NewGore(new Vector2(position.X, position.Y + 40f), velocity, 962, scale);
79379 }
79380 }
79381 else if (type == 546)
79382 {
79383 Color color2 = new Color(150, 108, 78) * 0.7f;
79384 if (life > 0)
79385 {
79386 for (int num90 = 0; (double)num90 < dmg / (double)lifeMax * 50.0; num90++)
79387 {
79388 Dust dust15 = Main.dust[Dust.NewDust(position, width, height, 268)];
79389 dust15.color = color2;
79390 dust15.noGravity = true;
79391 dust15.scale = 1.5f;
79392 dust15.fadeIn = 0.7f;
79393 Dust dust = dust15;
79394 dust.velocity *= 3f;
79395 dust15 = Main.dust[Dust.NewDust(position, width, height, 268)];
79396 dust15.color = color2;
79397 dust15.noGravity = true;
79398 dust15.scale = 1.5f;
79399 dust15.fadeIn = 0.7f;
79400 dust = dust15;
79401 dust.velocity *= 3f;
79402 }
79403 }
79404 else
79405 {
79406 for (int num91 = 0; num91 < 20; num91++)
79407 {
79408 Dust dust16 = Main.dust[Dust.NewDust(position, width, height, 268)];
79409 dust16.color = color2;
79410 dust16.noGravity = true;
79411 dust16.scale = 1.5f;
79412 dust16.fadeIn = 0.7f;
79413 Dust dust = dust16;
79414 dust.velocity *= 3f;
79415 dust16 = Main.dust[Dust.NewDust(position, width, height, 268)];
79416 dust16.color = color2;
79417 dust16.noGravity = true;
79418 dust16.scale = 1.5f;
79419 dust16.fadeIn = 0.7f;
79420 dust = dust16;
79421 dust.velocity *= 3f;
79422 }
79423 for (int num92 = 0; num92 < 20; num92++)
79424 {
79425 int num93 = Dust.NewDust(position, width, height, 54, 0f, 0f, 50, default(Color), 1.5f);
79426 Dust dust = Main.dust[num93];
79427 dust.velocity *= 2f;
79428 Main.dust[num93].noGravity = true;
79429 }
79430 Gore.NewGore(position, velocity, 964, scale);
79431 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 965, scale);
79432 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 966, scale);
79433 }
79434 }
79435 if (type == 378)
79436 {
79437 if (life > 0)
79438 {
79439 for (int num94 = 0; (double)num94 < dmg / (double)lifeMax * 50.0; num94++)
79440 {
79441 Dust.NewDust(position, width, height, 7);
79442 }
79443 }
79444 else
79445 {
79446 for (int num95 = 0; num95 < 20; num95++)
79447 {
79448 Dust.NewDust(position, width, height, 7);
79449 }
79450 }
79451 }
79452 if (type == 437 && dmg == 9999.0)
79453 {
79454 for (int num96 = 0; num96 < 6; num96++)
79455 {
79456 int num97 = Gore.NewGore(base.Center - new Vector2(10f), Vector2.UnitY.RotatedByRandom(6.2831854820251465) * 5f, 728 + num96);
79457 }
79458 }
79459 if (type == 398 && dmg == 1337.0 && Main.netMode != 2)
79460 {
79461 MoonlordDeathDrama.ThrowPieces(base.Center, Main.rand.Next(100));
79462 }
79463 if (type == 488)
79464 {
79465 localAI[0] = (int)dmg;
79466 if (localAI[0] < 20f)
79467 {
79468 localAI[0] = 20f;
79469 }
79470 if (localAI[0] > 120f)
79471 {
79472 localAI[0] = 120f;
79473 }
79474 localAI[1] = hitDirection;
79475 }
79476 if (type == 583 || type == 584 || type == 585)
79477 {
79480 int num98 = 4;
79481 if (type == 584)
79482 {
79485 }
79486 if (type == 585)
79487 {
79490 }
79491 if (life > 0)
79492 {
79493 for (int num99 = 0; (double)num99 < dmg / (double)lifeMax * 50.0; num99++)
79494 {
79495 Dust dust17 = Dust.NewDustDirect(base.Center - new Vector2(num98) * 0.5f, num98 + 4, num98 + 4, 278, 0f, 0f, 200, Color.Lerp(value, value2, Main.rand.NextFloat()), 0.65f);
79496 dust17.noGravity = true;
79497 }
79498 }
79499 else
79500 {
79501 for (int num100 = 0; num100 < 20; num100++)
79502 {
79503 Dust dust18 = Dust.NewDustDirect(base.Center - new Vector2(num98) * 0.5f, num98 + 4, num98 + 4, 278, 0f, 0f, 200, Color.Lerp(value, value2, Main.rand.NextFloat()), 0.65f);
79504 Dust dust = dust18;
79505 dust.velocity *= 1.5f;
79506 dust18.noGravity = true;
79507 }
79508 }
79509 }
79510 else if (type >= 513 && type <= 515)
79511 {
79512 if (life > 0)
79513 {
79514 for (int num101 = 0; (double)num101 < dmg / (double)lifeMax * 100.0; num101++)
79515 {
79516 Dust.NewDust(position, width, height, 250, hitDirection, -1f, alpha, this.color, scale);
79517 }
79518 }
79519 else
79520 {
79521 for (int num102 = 0; num102 < 50; num102++)
79522 {
79523 Dust.NewDust(position, width, height, 250, hitDirection, -2f, alpha, this.color, scale);
79524 }
79525 int num103 = Gore.NewGore(position, velocity, type - 513 + 822);
79526 Main.gore[num103].alpha = alpha;
79527 }
79528 }
79529 else if (type >= 510 && type <= 512)
79530 {
79531 if (life > 0)
79532 {
79533 for (int num104 = 0; (double)num104 < dmg / (double)lifeMax * 100.0; num104++)
79534 {
79535 Dust.NewDust(position, width, height, 250, hitDirection, -1f, alpha, this.color, scale);
79536 }
79537 }
79538 else
79539 {
79540 for (int num105 = 0; num105 < 50; num105++)
79541 {
79542 Dust.NewDust(position, width, height, 250, hitDirection, -2f, alpha, this.color, scale);
79543 }
79544 int num106 = Gore.NewGore(position, velocity, type - 510 + 819);
79545 Main.gore[num106].alpha = alpha;
79546 }
79547 }
79548 else if (type >= 621 && type <= 623)
79549 {
79550 if (life > 0)
79551 {
79552 for (int num107 = 0; (double)num107 < dmg / (double)lifeMax * 100.0; num107++)
79553 {
79554 Dust.NewDust(position, width, height, 5, hitDirection, -1f, alpha, this.color, scale);
79555 }
79556 }
79557 else
79558 {
79559 for (int num108 = 0; num108 < 50; num108++)
79560 {
79561 Dust.NewDust(position, width, height, 5, hitDirection, -2f, alpha, this.color, scale);
79562 }
79563 int num109 = Gore.NewGore(position, velocity, type - 621 + 1187);
79564 Main.gore[num109].alpha = alpha;
79565 }
79566 }
79567 else if (type == 518 || type == 416)
79568 {
79569 if (life > 0)
79570 {
79571 for (int num110 = 0; (double)num110 < dmg / (double)lifeMax * 20.0; num110++)
79572 {
79573 Dust.NewDust(position, width, height, 241, hitDirection, -1f);
79574 if (Main.rand.Next(4) == 0)
79575 {
79576 Dust dust19 = Main.dust[Dust.NewDust(position, width, height, 6)];
79577 dust19.noGravity = true;
79578 dust19.scale = 1.5f;
79579 dust19.fadeIn = 1f;
79580 Dust dust = dust19;
79581 dust.velocity *= 3f;
79582 }
79583 }
79584 }
79585 else
79586 {
79587 for (int num111 = 0; num111 < 20; num111++)
79588 {
79589 Dust.NewDust(position, width, height, 241, hitDirection, -1f);
79590 if (Main.rand.Next(3) == 0)
79591 {
79592 Dust dust20 = Main.dust[Dust.NewDust(position, width, height, 6)];
79593 dust20.noGravity = true;
79594 dust20.scale = 1.5f;
79595 dust20.fadeIn = 1f;
79596 Dust dust = dust20;
79597 dust.velocity *= 3f;
79598 }
79599 }
79600 Gore.NewGore(position, velocity, 844, scale);
79601 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 845, scale);
79602 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 847, scale);
79603 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 835, scale);
79604 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 836, scale);
79605 }
79606 }
79607 else if (type == 419)
79608 {
79609 if (life > 0)
79610 {
79611 for (int num112 = 0; (double)num112 < dmg / (double)lifeMax * 20.0; num112++)
79612 {
79613 Dust.NewDust(position, width, height, 241, hitDirection, -1f);
79614 if (Main.rand.Next(4) == 0)
79615 {
79616 Dust dust21 = Main.dust[Dust.NewDust(position, width, height, 6)];
79617 dust21.noGravity = true;
79618 dust21.scale = 1.5f;
79619 dust21.fadeIn = 1f;
79620 Dust dust = dust21;
79621 dust.velocity *= 3f;
79622 }
79623 }
79624 }
79625 else
79626 {
79627 for (int num113 = 0; num113 < 20; num113++)
79628 {
79629 Dust.NewDust(position, width, height, 241, hitDirection, -1f);
79630 if (Main.rand.Next(3) == 0)
79631 {
79632 Dust dust22 = Main.dust[Dust.NewDust(position, width, height, 6)];
79633 dust22.noGravity = true;
79634 dust22.scale = 1.5f;
79635 dust22.fadeIn = 1f;
79636 Dust dust = dust22;
79637 dust.velocity *= 3f;
79638 }
79639 }
79640 Gore.NewGore(position, velocity, 844, scale);
79641 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 845, scale);
79642 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 846, scale);
79643 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 846, scale);
79644 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 847, scale);
79645 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 847, scale);
79646 }
79647 }
79648 else if (type == 412 || type == 413 || type == 414)
79649 {
79650 if (life > 0)
79651 {
79652 for (int num114 = 0; (double)num114 < dmg / (double)lifeMax * 50.0; num114++)
79653 {
79654 Dust.NewDust(position, width, height, 241, hitDirection, -1f);
79655 }
79656 }
79657 else
79658 {
79659 for (int num115 = 0; num115 < 6; num115++)
79660 {
79661 Dust.NewDust(position, width, height, 241, 2.5f * (float)hitDirection, -2.5f);
79662 }
79663 for (int num116 = 0; num116 < 2; num116++)
79664 {
79665 Dust.NewDust(position, width, height, 6, 2.5f * (float)hitDirection, -2.5f, 100, Color.Transparent, 2f);
79666 }
79667 Gore.NewGore(position, velocity, type - 412 + 828);
79668 }
79669 }
79670 else if (type == 415)
79671 {
79672 if (life > 0)
79673 {
79674 for (int num117 = 0; (double)num117 < dmg / (double)lifeMax * 20.0; num117++)
79675 {
79676 Dust.NewDust(position, width, height, 241, hitDirection, -1f);
79677 if (Main.rand.Next(4) == 0)
79678 {
79679 Dust dust23 = Main.dust[Dust.NewDust(position, width, height, 6)];
79680 dust23.noGravity = true;
79681 dust23.scale = 1.5f;
79682 dust23.fadeIn = 1f;
79683 Dust dust = dust23;
79684 dust.velocity *= 3f;
79685 }
79686 }
79687 }
79688 else
79689 {
79690 for (int num118 = 0; num118 < 40; num118++)
79691 {
79692 Dust.NewDust(position, width, height, 241, hitDirection, -1f);
79693 Dust dust24 = Main.dust[Dust.NewDust(position, width, height, 6)];
79694 dust24.noGravity = true;
79695 dust24.scale = 1.5f;
79696 dust24.fadeIn = 1f;
79697 Dust dust = dust24;
79698 dust.velocity *= 3f;
79699 }
79700 Gore.NewGore(base.Center, velocity * 0.8f, 831);
79701 Gore.NewGore(base.Center, velocity * 0.8f, 832);
79702 Gore.NewGore(base.Center, velocity * 0.9f, 833);
79703 Gore.NewGore(base.Center, velocity * 0.9f, 834);
79704 }
79705 }
79706 else if (type == 417)
79707 {
79708 if (life > 0)
79709 {
79710 for (int num119 = 0; (double)num119 < dmg / (double)lifeMax * 20.0; num119++)
79711 {
79712 Dust.NewDust(position, width, height, 241, hitDirection, -1f);
79713 if (Main.rand.Next(4) == 0)
79714 {
79715 Dust dust25 = Main.dust[Dust.NewDust(position, width, height, 6)];
79716 dust25.noGravity = true;
79717 dust25.scale = 1.5f;
79718 dust25.fadeIn = 1f;
79719 Dust dust = dust25;
79720 dust.velocity *= 3f;
79721 }
79722 }
79723 }
79724 else
79725 {
79726 for (int num120 = 0; num120 < 30; num120++)
79727 {
79728 Dust.NewDust(position, width, height, 241, hitDirection, -1f);
79729 if (Main.rand.Next(2) == 0)
79730 {
79731 Dust dust26 = Main.dust[Dust.NewDust(position, width, height, 6)];
79732 dust26.noGravity = true;
79733 dust26.scale = 1.5f;
79734 dust26.fadeIn = 1f;
79735 Dust dust = dust26;
79736 dust.velocity *= 3f;
79737 }
79738 }
79739 Gore.NewGore(position, velocity, 837, scale);
79740 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 838, scale);
79741 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 838, scale);
79742 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 838, scale);
79743 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 839, scale);
79744 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 839, scale);
79745 Gore.NewGore(new Vector2(position.X, position.Y + 38f), velocity, 840, scale);
79746 Gore.NewGore(new Vector2(position.X, position.Y + 38f), velocity, 840, scale);
79747 }
79748 }
79749 else if (type == 418)
79750 {
79751 if (life > 0)
79752 {
79753 for (int num121 = 0; (double)num121 < dmg / (double)lifeMax * 20.0; num121++)
79754 {
79755 Dust.NewDust(position, width, height, 241, hitDirection, -1f);
79756 if (Main.rand.Next(2) == 0)
79757 {
79758 Dust dust27 = Main.dust[Dust.NewDust(position, width, height, 6)];
79759 dust27.noGravity = true;
79760 dust27.scale = 1.5f;
79761 dust27.fadeIn = 1f;
79762 Dust dust = dust27;
79763 dust.velocity *= 3f;
79764 }
79765 }
79766 }
79767 else
79768 {
79769 for (int num122 = 0; num122 < 20; num122++)
79770 {
79771 Dust.NewDust(position, width, height, 241, hitDirection, -1f);
79772 Dust dust28 = Main.dust[Dust.NewDust(position, width, height, 6)];
79773 dust28.noGravity = true;
79774 dust28.scale = 1.5f;
79775 dust28.fadeIn = 1f;
79776 Dust dust = dust28;
79777 dust.velocity *= 3f;
79778 }
79779 Gore.NewGore(base.Center, velocity * 0.8f, 841);
79780 Gore.NewGore(base.Center, velocity * 0.8f, 842);
79781 Gore.NewGore(base.Center, velocity * 0.8f, 842);
79782 Gore.NewGore(base.Center, velocity * 0.9f, 843);
79783 Gore.NewGore(base.Center, velocity * 0.9f, 843);
79784 }
79785 }
79786 if (type == 516)
79787 {
79788 for (int num123 = 0; num123 < 20; num123++)
79789 {
79790 int num124 = Dust.NewDust(position, width, height, 6, 2.5f * (float)hitDirection, -2.5f);
79791 Dust dust = Main.dust[num124];
79792 dust.velocity *= 3f;
79793 dust = Main.dust[num124];
79794 dust.scale += Main.rand.NextFloat();
79795 if (Main.rand.Next(2) == 0)
79796 {
79797 num124 = Dust.NewDust(position, width, height, 259, 2.5f * (float)hitDirection, -2.5f);
79798 Main.dust[num124].noGravity = true;
79799 }
79800 }
79801 }
79802 if (type == 519)
79803 {
79804 Rectangle hitbox2 = base.Hitbox;
79805 for (int num125 = 0; num125 < oldPos.Length; num125 += 3)
79806 {
79807 hitbox2.X = (int)oldPos[num125].X;
79808 hitbox2.Y = (int)oldPos[num125].Y;
79809 for (int num126 = 0; num126 < 5; num126++)
79810 {
79811 int num127 = Utils.SelectRandom<int>(Main.rand, 6, 259, 158);
79812 int num128 = Dust.NewDust(hitbox2.TopLeft(), width, height, num127, 2.5f * (float)hitDirection, -2.5f);
79813 Main.dust[num128].alpha = 200;
79814 Dust dust = Main.dust[num128];
79815 dust.velocity *= 2.4f;
79816 dust = Main.dust[num128];
79817 dust.scale += Main.rand.NextFloat();
79818 }
79819 }
79820 }
79821 if (type == 522)
79822 {
79823 Vector2 spinningpoint = new Vector2(0f, -3f).RotatedByRandom(3.1415927410125732);
79824 float num129 = 24f;
79825 Vector2 vector14 = new Vector2(1.05f, 1f);
79826 for (float num130 = 0f; num130 < num129; num130++)
79827 {
79828 int num131 = Dust.NewDust(base.Center, 0, 0, 66, 0f, 0f, 0, Color.Transparent);
79829 Main.dust[num131].position = base.Center;
79830 Main.dust[num131].velocity = spinningpoint.RotatedBy((float)Math.PI * 2f * num130 / num129) * vector14 * (0.8f + Main.rand.NextFloat() * 0.4f) * 2f;
79831 Main.dust[num131].color = Color.SkyBlue;
79832 Main.dust[num131].noGravity = true;
79833 Dust dust = Main.dust[num131];
79834 dust.scale += 0.5f + Main.rand.NextFloat();
79835 }
79836 }
79837 else if (type == 426)
79838 {
79839 if (life > 0)
79840 {
79841 for (int num132 = 0; (double)num132 < dmg / (double)lifeMax * 50.0; num132++)
79842 {
79843 Dust.NewDust(position, width, height, 241, hitDirection, -1f);
79844 if (Main.rand.Next(4) == 0)
79845 {
79846 Dust dust29 = Main.dust[Dust.NewDust(position, width, height, 229)];
79847 dust29.noGravity = true;
79848 dust29.scale = 1.5f;
79849 dust29.fadeIn = 1f;
79850 Dust dust = dust29;
79851 dust.velocity *= 3f;
79852 }
79853 }
79854 }
79855 else
79856 {
79857 for (int num133 = 0; num133 < 20; num133++)
79858 {
79859 Dust.NewDust(position, width, height, 241, hitDirection, -1f);
79860 }
79861 for (int num134 = 0; num134 < 30; num134++)
79862 {
79863 int num135 = Utils.SelectRandom<int>(Main.rand, 229, 240, 161);
79864 Dust dust30 = Main.dust[Dust.NewDust(position, width, height, num135)];
79865 dust30.noGravity = true;
79866 dust30.scale = 1.25f + Main.rand.NextFloat();
79867 dust30.fadeIn = 0.25f;
79868 Dust dust = dust30;
79869 dust.velocity *= 2f;
79870 dust30.noLight = true;
79871 }
79872 Gore.NewGore(base.Top, velocity * 0.7f, 799);
79873 Gore.NewGore(base.Center, velocity * 0.8f, 800);
79874 Gore.NewGore(base.Center, velocity * 0.9f, 801);
79875 if (Main.netMode != 1)
79876 {
79877 int num136 = CountNPCS(428) + CountNPCS(427) + CountNPCS(426) * 3;
79878 int num137 = 20;
79879 if (num136 < num137)
79880 {
79881 for (int num138 = 0; num138 < 3; num138++)
79882 {
79883 int num139 = NewNPC(GetSpawnSource_NPCHurt(), (int)base.Center.X, (int)base.Center.Y, 428, whoAmI);
79884 Main.npc[num139].velocity = -Vector2.UnitY.RotatedByRandom(6.2831854820251465) * Main.rand.Next(3, 6) - Vector2.UnitY * 2f;
79885 Main.npc[num139].netUpdate = true;
79886 }
79887 }
79888 }
79889 }
79890 }
79891 else if (type == 427)
79892 {
79893 if (life > 0)
79894 {
79895 for (int num140 = 0; (double)num140 < dmg / (double)lifeMax * 20.0; num140++)
79896 {
79897 Dust.NewDust(position, width, height, 241, hitDirection, -1f);
79898 if (Main.rand.Next(2) == 0)
79899 {
79900 Dust dust31 = Main.dust[Dust.NewDust(position, width, height, 229)];
79901 dust31.noGravity = true;
79902 dust31.scale = 1.5f;
79903 dust31.fadeIn = 1f;
79904 Dust dust = dust31;
79905 dust.velocity *= 3f;
79906 }
79907 }
79908 }
79909 else
79910 {
79911 for (int num141 = 0; num141 < 10; num141++)
79912 {
79913 Dust.NewDust(position, width, height, 241, hitDirection, -1f);
79914 }
79915 for (int num142 = 0; num142 < 20; num142++)
79916 {
79917 int num143 = Utils.SelectRandom<int>(Main.rand, 229, 229, 240);
79918 Dust dust32 = Main.dust[Dust.NewDust(position, width, height, num143)];
79919 dust32.noGravity = true;
79920 dust32.scale = 1.25f + Main.rand.NextFloat();
79921 dust32.fadeIn = 0.25f;
79922 Dust dust = dust32;
79923 dust.velocity *= 3f;
79924 dust32.noLight = true;
79925 }
79926 Gore.NewGore(base.Center, velocity * 0.8f, 802);
79927 Gore.NewGore(base.Center, velocity * 0.9f, 803);
79928 Gore.NewGore(base.Center, velocity * 0.9f, 804);
79929 Gore.NewGore(base.Center, velocity * 0.8f, 805);
79930 }
79931 }
79932 else if (type == 429)
79933 {
79934 if (life > 0)
79935 {
79936 for (int num144 = 0; (double)num144 < dmg / (double)lifeMax * 20.0; num144++)
79937 {
79938 Dust.NewDust(position, width, height, 241, hitDirection, -1f);
79939 if (Main.rand.Next(4) == 0)
79940 {
79941 Dust dust33 = Main.dust[Dust.NewDust(position, width, height, 229)];
79942 dust33.noGravity = true;
79943 dust33.scale = 1.5f;
79944 dust33.fadeIn = 1f;
79945 Dust dust = dust33;
79946 dust.velocity *= 3f;
79947 }
79948 }
79949 }
79950 else
79951 {
79952 for (int num145 = 0; num145 < 20; num145++)
79953 {
79954 Dust.NewDust(position, width, height, 241, hitDirection, -1f);
79955 if (Main.rand.Next(3) == 0)
79956 {
79957 Dust dust34 = Main.dust[Dust.NewDust(position, width, height, 229)];
79958 dust34.noGravity = true;
79959 dust34.scale = 1.5f;
79960 dust34.fadeIn = 1f;
79961 Dust dust = dust34;
79962 dust.velocity *= 3f;
79963 }
79964 }
79965 Gore.NewGore(position, velocity, 808, scale);
79966 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 809, scale);
79967 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 809, scale);
79968 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 810, scale);
79969 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 810, scale);
79970 if (Main.netMode != 1)
79971 {
79972 Point point = base.Center.ToTileCoordinates();
79973 Point point2 = Main.player[target].Center.ToTileCoordinates();
79974 Vector2 vector15 = Main.player[target].Center - base.Center;
79975 int num146 = 20;
79976 int num147 = 3;
79977 int num148 = 7;
79978 int num149 = 2;
79979 int num150 = 0;
79980 bool flag2 = false;
79981 if (vector15.Length() > 2000f)
79982 {
79983 flag2 = true;
79984 }
79985 while (!flag2 && num150 < 100)
79986 {
79987 num150++;
79988 int num151 = Main.rand.Next(point2.X - num146, point2.X + num146 + 1);
79989 int num152 = Main.rand.Next(point2.Y - num146, point2.Y - Math.Abs(num151 - point2.X) + 1);
79990 if ((num152 < point2.Y - num148 || num152 > point2.Y + num148 || num151 < point2.X - num148 || num151 > point2.X + num148) && (num152 < point.Y - num147 || num152 > point.Y + num147 || num151 < point.X - num147 || num151 > point.X + num147) && !Main.tile[num151, num152].nactive())
79991 {
79992 bool flag3 = true;
79993 if (flag3 && Main.tile[num151, num152].lava())
79994 {
79995 flag3 = false;
79996 }
79997 if (flag3 && Collision.SolidTiles(num151 - num149, num151 + num149, num152 - num149, num152 + num149))
79998 {
79999 flag3 = false;
80000 }
80001 if (flag3 && !Collision.CanHitLine(base.Center, 0, 0, Main.player[target].Center, 0, 0))
80002 {
80003 flag3 = false;
80004 }
80005 if (flag3)
80006 {
80007 Projectile.NewProjectile(GetSpawnSource_ForProjectile(), num151 * 16 + 8, num152 * 16 + 8, 0f, 0f, 578, 0, 1f, Main.myPlayer);
80008 flag2 = true;
80009 break;
80010 }
80011 }
80012 }
80013 }
80014 }
80015 }
80016 else if (type == 425)
80017 {
80018 if (life > 0)
80019 {
80020 for (int num153 = 0; (double)num153 < dmg / (double)lifeMax * 20.0; num153++)
80021 {
80022 Dust.NewDust(position, width, height, 241, hitDirection, -1f);
80023 if (Main.rand.Next(4) == 0)
80024 {
80025 Dust dust35 = Main.dust[Dust.NewDust(position, width, height, 229)];
80026 dust35.noGravity = true;
80027 dust35.scale = 1.5f;
80028 dust35.fadeIn = 1f;
80029 Dust dust = dust35;
80030 dust.velocity *= 3f;
80031 }
80032 }
80033 }
80034 else
80035 {
80036 for (int num154 = 0; num154 < 20; num154++)
80037 {
80038 Dust.NewDust(position, width, height, 241, hitDirection, -1f);
80039 if (Main.rand.Next(3) == 0)
80040 {
80041 Dust dust36 = Main.dust[Dust.NewDust(position, width, height, 229)];
80042 dust36.noGravity = true;
80043 dust36.scale = 1.5f;
80044 dust36.fadeIn = 1f;
80045 Dust dust = dust36;
80046 dust.velocity *= 3f;
80047 }
80048 }
80049 Gore.NewGore(position, velocity, 796, scale);
80050 Gore.NewGore(base.Center, velocity, 797, scale);
80051 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 798, scale);
80052 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 809, scale);
80053 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 809, scale);
80054 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 810, scale);
80055 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 810, scale);
80056 }
80057 }
80058 else if (type == 428)
80059 {
80060 if (life > 0)
80061 {
80062 for (int num155 = 0; (double)num155 < dmg / (double)lifeMax * 20.0; num155++)
80063 {
80064 Dust.NewDust(position, width, height, 241, hitDirection, -1f);
80065 }
80066 }
80067 else
80068 {
80069 for (int num156 = 0; num156 < 10; num156++)
80070 {
80071 Dust.NewDust(position, width, height, 241, hitDirection, -1f);
80072 if (Main.rand.Next(2) == 0)
80073 {
80074 Dust.NewDust(position, width, height, 229);
80075 }
80076 else
80077 {
80078 Dust.NewDust(position, width, height, 240);
80079 }
80080 }
80081 Gore.NewGore(position, velocity * 0.8f, 806);
80082 Gore.NewGore(position, velocity * 0.8f, 807);
80083 }
80084 }
80085 else if (type == 424)
80086 {
80087 if (life > 0)
80088 {
80089 for (int num157 = 0; (double)num157 < dmg / (double)lifeMax * 20.0; num157++)
80090 {
80091 Dust.NewDust(position, width, height, 249, hitDirection, -1f);
80092 if (Main.rand.Next(4) == 0)
80093 {
80094 Dust dust37 = Main.dust[Dust.NewDust(position, width, height, 242)];
80095 dust37.noGravity = true;
80096 dust37.scale = 1.5f;
80097 dust37.fadeIn = 1f;
80098 Dust dust = dust37;
80099 dust.velocity *= 3f;
80100 }
80101 }
80102 }
80103 else
80104 {
80105 for (int num158 = 0; num158 < 20; num158++)
80106 {
80107 Dust.NewDust(position, width, height, 249, hitDirection, -1f);
80108 if (Main.rand.Next(3) == 0)
80109 {
80110 Dust dust38 = Main.dust[Dust.NewDust(position, width, height, 242)];
80111 dust38.noGravity = true;
80112 dust38.scale = 1.5f;
80113 dust38.fadeIn = 1f;
80114 Dust dust = dust38;
80115 dust.velocity *= 3f;
80116 }
80117 }
80118 Gore.NewGore(position, velocity, 793, scale);
80119 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 794, scale);
80120 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 794, scale);
80121 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 795, scale);
80122 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 795, scale);
80123 }
80124 }
80125 else if (type == 423)
80126 {
80127 if (life > 0)
80128 {
80129 for (int num159 = 0; (double)num159 < dmg / (double)lifeMax * 50.0; num159++)
80130 {
80131 Dust.NewDust(position, width, height, 249, hitDirection, -1f);
80132 if (Main.rand.Next(4) == 0)
80133 {
80134 Dust dust39 = Main.dust[Dust.NewDust(position, width, height, 242)];
80135 dust39.noGravity = true;
80136 dust39.scale = 1.5f;
80137 dust39.fadeIn = 1f;
80138 Dust dust = dust39;
80139 dust.velocity *= 3f;
80140 }
80141 }
80142 }
80143 else
80144 {
80145 for (int num160 = 0; num160 < 20; num160++)
80146 {
80147 Dust.NewDust(position, width, height, 249, hitDirection, -1f);
80148 Dust dust40 = Main.dust[Dust.NewDust(position, width, height, 242)];
80149 dust40.noGravity = true;
80150 dust40.scale = 1.5f;
80151 dust40.fadeIn = 1f;
80152 Dust dust = dust40;
80153 dust.velocity *= 3f;
80154 }
80155 Gore.NewGore(base.Center, velocity * 0.8f, 790);
80156 Gore.NewGore(base.Center, velocity * 0.8f, 791);
80157 Gore.NewGore(base.Center, velocity * 0.9f, 792);
80158 }
80159 }
80160 else if (type == 421)
80161 {
80162 if (life > 0)
80163 {
80164 for (int num161 = 0; (double)num161 < dmg / (double)lifeMax * 20.0; num161++)
80165 {
80166 Dust.NewDust(position, width, height, 249, hitDirection, -1f);
80167 if (Main.rand.Next(2) == 0)
80168 {
80169 Dust dust41 = Main.dust[Dust.NewDust(position, width, height, 242)];
80170 dust41.noGravity = true;
80171 dust41.scale = 1.5f;
80172 dust41.fadeIn = 1f;
80173 Dust dust = dust41;
80174 dust.velocity *= 3f;
80175 }
80176 }
80177 }
80178 else
80179 {
80180 for (int num162 = 0; num162 < 10; num162++)
80181 {
80182 Dust.NewDust(position, width, height, 249, hitDirection, -1f);
80183 Dust dust42 = Main.dust[Dust.NewDust(position, width, height, 242)];
80184 dust42.noGravity = true;
80185 dust42.scale = 1.5f;
80186 dust42.fadeIn = 1f;
80187 Dust dust = dust42;
80188 dust.velocity *= 3f;
80189 }
80190 Gore.NewGore(base.Center, velocity * 0.8f, 785);
80191 Gore.NewGore(base.Center, velocity * 0.8f, 786);
80192 Gore.NewGore(base.Center, velocity * 0.9f, 787);
80193 }
80194 }
80195 else if (type == 420)
80196 {
80197 if (life > 0)
80198 {
80199 for (int num163 = 0; (double)num163 < dmg / (double)lifeMax * 20.0; num163++)
80200 {
80201 Dust.NewDust(position, width, height, 249, hitDirection, -1f);
80202 if (Main.rand.Next(2) == 0)
80203 {
80204 Dust dust43 = Main.dust[Dust.NewDust(position, width, height, 242)];
80205 dust43.noGravity = true;
80206 dust43.scale = 1.5f;
80207 dust43.fadeIn = 1f;
80208 Dust dust = dust43;
80209 dust.velocity *= 3f;
80210 }
80211 }
80212 }
80213 else
80214 {
80215 for (int num164 = 0; num164 < 10; num164++)
80216 {
80217 Dust.NewDust(position, width, height, 249, hitDirection, -1f);
80218 Dust dust44 = Main.dust[Dust.NewDust(position, width, height, 242)];
80219 dust44.noGravity = true;
80220 dust44.scale = 1.5f;
80221 dust44.fadeIn = 1f;
80222 Dust dust = dust44;
80223 dust.velocity *= 3f;
80224 }
80225 Gore.NewGore(base.Center, velocity * 0.8f, 782);
80226 Gore.NewGore(base.Center, velocity * 0.8f, 783);
80227 Gore.NewGore(base.Center, velocity * 0.9f, 784);
80228 }
80229 }
80230 else if (type == 406 || type == 405)
80231 {
80232 if (life > 0)
80233 {
80234 for (int num165 = 0; (double)num165 < 10.0 + dmg / 10.0; num165++)
80235 {
80236 int num166 = width / 4;
80237 Vector2 vector16 = ((float)Main.rand.NextDouble() * ((float)Math.PI * 2f)).ToRotationVector2() * Main.rand.Next(24, 41) / 8f;
80238 int num167 = Dust.NewDust(base.Center - Vector2.One * num166, num166 * 2, num166 * 2, 229);
80239 Dust dust45 = Main.dust[num167];
80240 Vector2 vector17 = Vector2.Normalize(dust45.position - base.Center);
80241 dust45.position = base.Center + vector17 * num166 * scale - new Vector2(4f);
80242 if (num165 < 30)
80243 {
80244 dust45.velocity = vector17 * dust45.velocity.Length() * 2f;
80245 }
80246 else
80247 {
80248 dust45.velocity = 2f * vector17 * Main.rand.Next(45, 91) / 10f;
80249 }
80250 dust45.noGravity = true;
80251 dust45.scale = 0.7f + Main.rand.NextFloat();
80252 }
80253 }
80254 else
80255 {
80256 for (int num168 = 0; num168 < 60; num168++)
80257 {
80258 int num169 = width / 4;
80259 Vector2 vector18 = ((float)Main.rand.NextDouble() * ((float)Math.PI * 2f)).ToRotationVector2() * Main.rand.Next(24, 41) / 8f;
80260 int num170 = Dust.NewDust(base.Center - Vector2.One * num169, num169 * 2, num169 * 2, 229);
80261 Dust dust46 = Main.dust[num170];
80262 Vector2 vector19 = Vector2.Normalize(dust46.position - base.Center);
80263 dust46.position = base.Center + vector19 * num169 * scale - new Vector2(4f);
80264 if (num168 < 30)
80265 {
80266 dust46.velocity = vector19 * dust46.velocity.Length() * 2f;
80267 }
80268 else
80269 {
80270 dust46.velocity = 2f * vector19 * Main.rand.Next(45, 91) / 10f;
80271 }
80272 dust46.noGravity = true;
80273 dust46.scale = 0.7f;
80274 }
80275 if (type == 405)
80276 {
80277 int num171 = CountNPCS(406) + CountNPCS(405);
80278 int num172 = 4;
80279 if (num171 >= 4)
80280 {
80281 num172 = 3;
80282 }
80283 if (num171 >= 7)
80284 {
80285 num172 = 2;
80286 }
80287 if (num171 >= 10)
80288 {
80289 num172 = 1;
80290 }
80291 for (int num173 = 0; num173 < num172; num173++)
80292 {
80293 Vector2 vector20 = Vector2.UnitY.RotatedByRandom(6.2831854820251465) * (3f + Main.rand.NextFloat() * 4f);
80294 int num174 = NewNPC(GetSpawnSource_NPCHurt(), (int)base.Center.X, (int)base.Bottom.Y, 406, whoAmI);
80295 Main.npc[num174].velocity = vector20;
80296 }
80297 }
80298 }
80299 }
80300 else if (type == 409)
80301 {
80302 if (life > 0)
80303 {
80304 for (int num175 = 0; (double)num175 < dmg / (double)lifeMax * 50.0; num175++)
80305 {
80306 Dust.NewDust(position, width, height, 17, hitDirection, -1f);
80307 if (Main.rand.Next(4) == 0)
80308 {
80309 Dust dust47 = Main.dust[Dust.NewDust(position, width, height, 229)];
80310 dust47.noGravity = true;
80311 }
80312 }
80313 }
80314 else
80315 {
80316 for (int num176 = 0; num176 < 20; num176++)
80317 {
80318 Dust.NewDust(position, width, height, 17, hitDirection, -1f);
80319 Dust dust48 = Main.dust[Dust.NewDust(position, width, height, 229)];
80320 dust48.noGravity = true;
80321 Dust dust = dust48;
80322 dust.velocity *= 3f;
80323 }
80324 Gore.NewGore(base.Center, velocity * 0.8f, 775);
80325 Gore.NewGore(base.Center, velocity * 0.8f, 776);
80326 Gore.NewGore(base.Center, velocity * 0.9f, 777);
80327 }
80328 }
80329 else if (type == 410)
80330 {
80331 if (life > 0)
80332 {
80333 for (int num177 = 0; (double)num177 < dmg / (double)lifeMax * 10.0; num177++)
80334 {
80335 Dust.NewDust(position, width, height, 17, hitDirection, -1f);
80336 if (Main.rand.Next(4) == 0)
80337 {
80338 Dust dust49 = Main.dust[Dust.NewDust(position, width, height, 229)];
80339 dust49.noGravity = true;
80340 }
80341 }
80342 }
80343 else
80344 {
80345 for (int num178 = 0; num178 < 5; num178++)
80346 {
80347 Dust.NewDust(position, width, height, 17, hitDirection, -1f);
80348 Dust dust50 = Main.dust[Dust.NewDust(position, width, height, 229)];
80349 dust50.noGravity = true;
80350 Dust dust = dust50;
80351 dust.velocity *= 3f;
80352 }
80353 }
80354 }
80355 else if (type == 407)
80356 {
80357 if (life > 0)
80358 {
80359 for (int num179 = 0; (double)num179 < dmg / (double)lifeMax * 50.0; num179++)
80360 {
80361 Dust.NewDust(position, width, height, 17, hitDirection, -1f, 0, Color.Transparent, 0.75f);
80362 if (Main.rand.Next(2) == 0)
80363 {
80364 Dust dust51 = Main.dust[Dust.NewDust(position, width, height, 229)];
80365 dust51.noGravity = true;
80366 }
80367 }
80368 }
80369 else
80370 {
80371 for (int num180 = 0; num180 < 20; num180++)
80372 {
80373 if (Main.rand.Next(3) != 0)
80374 {
80375 Dust.NewDust(position, width, height, 17, hitDirection, -1f);
80376 }
80377 Dust dust52 = Main.dust[Dust.NewDust(position, width, height, 229)];
80378 dust52.noGravity = true;
80379 Dust dust = dust52;
80380 dust.velocity *= 3f;
80381 }
80382 Gore.NewGore(base.Top, velocity * 0.8f, 778);
80383 Gore.NewGore(base.Top, velocity * 0.8f, 779);
80384 Gore.NewGore(base.Center, velocity * 0.9f, 780);
80385 Gore.NewGore(base.Center, velocity * 0.9f, 781);
80386 Gore.NewGore(base.Center, velocity * 0.9f, 780);
80387 Gore.NewGore(base.Center, velocity * 0.9f, 781);
80388 }
80389 }
80390 else if (type == 402)
80391 {
80392 if (life > 0)
80393 {
80394 for (int num181 = 0; (double)num181 < dmg / (double)lifeMax * 3.0; num181++)
80395 {
80396 if (Main.rand.Next(3) == 0)
80397 {
80398 Dust.NewDust(position, width, height, 17, hitDirection, -1f, 0, Color.Transparent, 0.75f);
80399 }
80400 if (Main.rand.Next(2) == 0)
80401 {
80402 Dust dust53 = Main.dust[Dust.NewDust(position, width, height, 229)];
80403 dust53.noGravity = true;
80404 }
80405 for (int num182 = 0; num182 < oldPos.Length; num182++)
80406 {
80407 if (Main.rand.Next(4) == 0)
80408 {
80409 if (oldPos[num182] == Vector2.Zero)
80410 {
80411 break;
80412 }
80413 if (Main.rand.Next(3) == 0)
80414 {
80415 Dust.NewDust(oldPos[num182], width, height, 17, hitDirection, -1f, 0, Color.Transparent, 0.75f);
80416 }
80417 if (Main.rand.Next(2) == 0)
80418 {
80419 Dust dust54 = Main.dust[Dust.NewDust(oldPos[num182], width, height, 229)];
80420 dust54.noGravity = true;
80421 }
80422 }
80423 }
80424 }
80425 }
80426 else
80427 {
80428 for (int num183 = 0; num183 < 5; num183++)
80429 {
80430 if (Main.rand.Next(3) == 0)
80431 {
80432 Dust.NewDust(position, width, height, 17, hitDirection, -1f);
80433 }
80434 Dust dust55 = Main.dust[Dust.NewDust(position, width, height, 229)];
80435 dust55.noGravity = true;
80436 Dust dust = dust55;
80437 dust.velocity *= 3f;
80438 }
80439 for (int num184 = 0; num184 < oldPos.Length; num184++)
80440 {
80441 if (Main.rand.Next(4) != 0)
80442 {
80443 continue;
80444 }
80445 if (oldPos[num184] == Vector2.Zero)
80446 {
80447 break;
80448 }
80449 for (int num185 = 0; num185 < 2; num185++)
80450 {
80451 if (Main.rand.Next(3) == 0)
80452 {
80453 Dust.NewDust(oldPos[num184], width, height, 17, hitDirection, -1f);
80454 }
80455 Dust dust56 = Main.dust[Dust.NewDust(oldPos[num184], width, height, 229)];
80456 dust56.noGravity = true;
80457 Dust dust = dust56;
80458 dust.velocity *= 3f;
80459 }
80460 }
80461 }
80462 }
80463 else if (type == 411)
80464 {
80465 if (life > 0)
80466 {
80467 for (int num186 = 0; (double)num186 < dmg / (double)lifeMax * 20.0; num186++)
80468 {
80469 Dust.NewDust(position, width, height, 17, hitDirection, -1f);
80470 if (Main.rand.Next(4) == 0)
80471 {
80472 Dust dust57 = Main.dust[Dust.NewDust(position, width, height, 229)];
80473 dust57.noGravity = true;
80474 }
80475 }
80476 }
80477 else
80478 {
80479 for (int num187 = 0; num187 < 20; num187++)
80480 {
80481 Dust.NewDust(position, width, height, 17, hitDirection, -1f);
80482 if (Main.rand.Next(2) == 0)
80483 {
80484 Dust dust58 = Main.dust[Dust.NewDust(position, width, height, 229)];
80485 dust58.noGravity = true;
80486 }
80487 }
80488 Gore.NewGore(position, velocity, 772, scale);
80489 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 773, scale);
80490 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 773, scale);
80491 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 774, scale);
80492 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 774, scale);
80493 }
80494 }
80495 else if (type == 491)
80496 {
80497 if (life <= 0)
80498 {
80499 Vector2 vector21 = base.Center - new Vector2(60f);
80500 Vector2 vector22 = new Vector2((spriteDirection != 1) ? 1 : (-1), 0f).RotatedBy(rotation);
80501 Gore.NewGore(vector21 + vector22 * (width / 2), velocity, 858, scale);
80502 Gore.NewGore(vector21 + vector22 * (width / 3), velocity, 857, scale);
80503 for (int num188 = -1; num188 < 2; num188++)
80504 {
80505 Gore.NewGore(vector21 + vector22 * ((float)width * (0.45f + (float)num188 * 0.1f)), velocity, 859, scale);
80506 Gore.NewGore(vector21 + vector22 * ((float)width * (0.4f + (float)num188 * 0.1f)), velocity, 859, scale);
80507 Gore.NewGore(vector21 + vector22 * ((float)width * (0.35f + (float)num188 * 0.1f)), velocity, 859, scale);
80508 }
80509 for (int num189 = -1; num189 < 2; num189++)
80510 {
80511 Gore.NewGore(vector21 + vector22 * ((float)width * 0.35f) - new Vector2(0f, 200f) + Utils.RandomVector2(Main.rand, -40f, 40f), velocity, Utils.SelectRandom<int>(Main.rand, 860, 892, 893), scale);
80512 Gore.NewGore(vector21 + vector22 * ((float)width * 0.15f) - new Vector2(0f, 200f) + Utils.RandomVector2(Main.rand, -40f, 40f), velocity, Utils.SelectRandom<int>(Main.rand, 860, 892, 893), scale);
80513 Gore.NewGore(vector21 + vector22 * ((float)width * -0.35f) - new Vector2(0f, 200f) + Utils.RandomVector2(Main.rand, -40f, 40f), velocity, Utils.SelectRandom<int>(Main.rand, 860, 892, 893), scale);
80514 Gore.NewGore(vector21 + vector22 * ((float)width * -0.15f) - new Vector2(0f, 300f) + Utils.RandomVector2(Main.rand, -40f, 40f), velocity, Utils.SelectRandom<int>(Main.rand, 860, 892, 893), scale);
80515 Gore.NewGore(vector21 + vector22 * ((float)width * -0.15f) - new Vector2(0f, 300f) + Utils.RandomVector2(Main.rand, -40f, 40f), velocity, Utils.SelectRandom<int>(Main.rand, 860, 892, 893), scale);
80516 }
80517 for (int num190 = 0; num190 < 2; num190++)
80518 {
80519 Gore.NewGore(vector21 + vector22 * ((float)width * 0.15f) - new Vector2(0f, 160 + 60 * num190), velocity, 855, scale);
80520 Gore.NewGore(vector21 + vector22 * ((float)width * -0.15f) - new Vector2(0f, 160 + 60 * num190), velocity, 855, scale);
80521 }
80522 for (int num191 = -1; num191 < 2; num191++)
80523 {
80524 Gore.NewGore(vector21 + vector22 * ((float)width * (0.25f + (float)num191 * 0.1f)) - new Vector2(0f, 20 + 40 * num191), velocity, 854, scale);
80525 Gore.NewGore(vector21 + vector22 * ((float)width * (-0.45f + (float)num191 * 0.1f)) - new Vector2(0f, 20 + 40 * num191), velocity, 853, scale);
80526 Gore.NewGore(vector21 + vector22 * ((float)width * (0.05f + (float)num191 * 0.1f)) - new Vector2(0f, 20 + 40 * num191), velocity, 856, scale);
80527 }
80528 for (int num192 = 0; num192 < 30; num192++)
80529 {
80530 int num193 = Main.rand.Next(861, 863);
80531 int num194 = Gore.NewGore(base.Center - new Vector2(60f), Vector2.Zero, num193);
80532 Main.gore[num194].alpha = 100;
80533 Main.gore[num194].velocity = Vector2.Transform(new Vector2(4f, 0f), Matrix.CreateRotationZ((float)(Main.rand.NextDouble() * 6.2831854820251465)));
80534 Main.gore[num194].position = new Vector2(position.X - 20f + ((float)width + 40f) * Main.rand.NextFloat(), position.Y - 240f + (float)(height + 240 - 20) * Main.rand.NextFloat());
80535 }
80536 for (int num195 = 0; num195 < 120; num195++)
80537 {
80538 int num196 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, 0f, 0f, 100, default(Color), 2.5f);
80539 Main.dust[num196].noGravity = true;
80540 Dust dust = Main.dust[num196];
80541 dust.velocity *= 5f;
80542 num196 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, 0f, 0f, 100, default(Color), 1.5f);
80543 dust = Main.dust[num196];
80544 dust.velocity *= 4f;
80545 Main.dust[num196].noGravity = true;
80546 }
80547 if (Main.netMode != 1)
80548 {
80549 for (int num197 = 0; num197 < 4; num197++)
80550 {
80551 float num198 = (float)(num197 < 2).ToDirectionInt() * ((float)Math.PI / 8f + (float)Math.PI / 4f * Main.rand.NextFloat());
80552 Vector2 vector23 = new Vector2(0f, (0f - Main.rand.NextFloat()) * 0.5f - 0.5f).RotatedBy(num198) * 6f;
80553 Projectile.NewProjectile(GetSpawnSource_ForProjectile(), base.Center.X, base.Center.Y, vector23.X, vector23.Y, 594, 0, 0f, Main.myPlayer);
80554 }
80555 }
80556 }
80557 }
80558 else if (type == 492)
80559 {
80560 if (life <= 0)
80561 {
80562 for (int num199 = 0; num199 < 7; num199++)
80563 {
80564 int num200 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 31, 0f, 0f, 100, default(Color), 1.5f);
80565 Dust dust = Main.dust[num200];
80566 dust.velocity *= 1.4f;
80567 }
80568 for (int num201 = 0; num201 < 10; num201++)
80569 {
80570 int num202 = Main.rand.Next(61, 64);
80571 int num203 = Gore.NewGore(position, Vector2.Zero, num202);
80572 Main.gore[num203].alpha = 100;
80573 Main.gore[num203].velocity = Vector2.Transform(new Vector2(1f, 0f), Matrix.CreateRotationZ((float)(Main.rand.NextDouble() * 6.2831854820251465)));
80574 }
80575 }
80576 }
80577 else if (type >= 524 && type <= 527)
80578 {
80579 int num204 = 0;
80580 int num205 = 5;
80581 int num206 = 863;
80582 if (type == 525)
80583 {
80584 num204 = 75;
80585 num206 = 867;
80586 }
80587 else if (type == 526)
80588 {
80589 num204 = 170;
80590 num206 = 871;
80591 }
80592 else if (type == 527)
80593 {
80594 num204 = 67;
80595 num206 = 879;
80596 }
80597 if (life > 0)
80598 {
80599 for (int num207 = 0; (double)num207 < dmg / (double)lifeMax * 20.0; num207++)
80600 {
80601 Dust.NewDust(position, width, height, num205, hitDirection, -1f);
80602 if (Main.rand.Next(4) == 0 && num204 > 0)
80603 {
80604 Dust dust59 = Main.dust[Dust.NewDust(position, width, height, num204)];
80605 dust59.noGravity = true;
80606 dust59.scale = 1.5f;
80607 dust59.fadeIn = 1f;
80608 Dust dust = dust59;
80609 dust.velocity *= 3f;
80610 }
80611 }
80612 }
80613 else
80614 {
80615 for (int num208 = 0; num208 < 20; num208++)
80616 {
80617 Dust.NewDust(position, width, height, num205, hitDirection, -1f);
80618 if (Main.rand.Next(3) == 0 && num204 > 0)
80619 {
80620 Dust dust60 = Main.dust[Dust.NewDust(position, width, height, num204)];
80621 dust60.noGravity = true;
80622 dust60.scale = 1.5f;
80623 dust60.fadeIn = 1f;
80624 Dust dust = dust60;
80625 dust.velocity *= 3f;
80626 }
80627 }
80628 Gore.NewGore(position, velocity, num206, scale);
80629 Gore.NewGore(position, velocity, num206 + 1, scale);
80630 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, num206 + 2, scale);
80631 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, num206 + 2, scale);
80632 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, num206 + 3, scale);
80633 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, num206 + 3, scale);
80634 }
80635 }
80636 else if (type >= 528 && type <= 529)
80637 {
80638 int num209 = 5;
80639 int num210 = 875;
80640 if (type == 529)
80641 {
80642 num210 = 876;
80643 }
80644 if (life > 0)
80645 {
80646 for (int num211 = 0; (double)num211 < dmg / (double)lifeMax * 20.0; num211++)
80647 {
80648 Dust.NewDust(position, width, height, num209, hitDirection, -1f);
80649 }
80650 }
80651 else
80652 {
80653 for (int num212 = 0; num212 < 20; num212++)
80654 {
80655 Dust.NewDust(position, width, height, num209, hitDirection, -1f);
80656 }
80657 Gore.NewGore(position, velocity, num210, scale);
80658 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 877, scale);
80659 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 877, scale);
80660 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 878, scale);
80661 }
80662 }
80663 else if (type == 530 || type == 531)
80664 {
80665 if (life > 0)
80666 {
80667 for (int num213 = 0; (double)num213 < dmg / (double)lifeMax * 30.0; num213++)
80668 {
80669 Dust.NewDust(position, width, height, 250, hitDirection, -1f, 100);
80670 }
80671 }
80672 else
80673 {
80674 for (int num214 = 0; num214 < 20; num214++)
80675 {
80676 Dust.NewDust(position, width, height, 250, 2.5f * (float)hitDirection, -2.5f, 100);
80677 }
80678 Gore.NewGore(position, velocity, 883);
80679 Gore.NewGore(position, velocity, 884);
80680 Gore.NewGore(position, velocity, 885);
80681 Gore.NewGore(position, velocity, 886);
80682 Gore.NewGore(position, velocity, 887);
80683 }
80684 }
80685 else if (type == 532)
80686 {
80687 if (life > 0)
80688 {
80689 for (int num215 = 0; (double)num215 < dmg / (double)lifeMax * 50.0; num215++)
80690 {
80691 Dust.NewDust(position, width, height, 5, hitDirection, -1f, 100);
80692 }
80693 }
80694 else
80695 {
80696 for (int num216 = 0; num216 < 50; num216++)
80697 {
80698 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f, 100);
80699 }
80700 Gore.NewGore(position, velocity, 888);
80701 Gore.NewGore(position, velocity, 889);
80702 Gore.NewGore(position, velocity, 890);
80703 Gore.NewGore(position, velocity, 891);
80704 }
80705 }
80706 else if (type == 533)
80707 {
80708 if (life > 0)
80709 {
80710 for (int num217 = 0; (double)num217 < dmg / (double)lifeMax * 50.0; num217++)
80711 {
80712 int num218 = Dust.NewDust(position, width, height, 27, 0f, 0f, 50, default(Color), 1.5f);
80713 Dust dust = Main.dust[num218];
80714 dust.velocity *= 2f;
80715 Main.dust[num218].noGravity = true;
80716 }
80717 }
80718 else
80719 {
80720 for (int num219 = 0; num219 < 40; num219++)
80721 {
80722 int num220 = Dust.NewDust(position, width, height, 27, 0f, 0f, 50, default(Color), 1.5f);
80723 Dust dust = Main.dust[num220];
80724 dust.velocity *= 2f;
80725 Main.dust[num220].noGravity = true;
80726 Main.dust[num220].fadeIn = 1f;
80727 }
80728 }
80729 }
80730 else if (type == 460)
80731 {
80732 if (life > 0)
80733 {
80734 for (int num221 = 0; (double)num221 < dmg / (double)lifeMax * 100.0; num221++)
80735 {
80736 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
80737 }
80738 }
80739 else
80740 {
80741 for (int num222 = 0; num222 < 50; num222++)
80742 {
80743 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
80744 }
80745 Gore.NewGore(position, velocity, 643, scale);
80746 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 645, scale);
80747 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 644, scale);
80748 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 646, scale);
80749 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 646, scale);
80750 }
80751 }
80752 else if (type == 477)
80753 {
80754 if (life > 0)
80755 {
80756 for (int num223 = 0; (double)num223 < dmg / (double)lifeMax * 100.0; num223++)
80757 {
80758 Dust.NewDust(position, width, height, 237, hitDirection, -1f);
80759 }
80760 }
80761 else
80762 {
80763 for (int num224 = 0; num224 < 50; num224++)
80764 {
80765 Dust.NewDust(position, width, height, 237, 2.5f * (float)hitDirection, -2.5f);
80766 }
80767 Gore.NewGore(position, velocity, 687, scale);
80768 Gore.NewGore(position, velocity, 688, scale);
80769 Gore.NewGore(position, velocity, 689, scale);
80770 Gore.NewGore(position, velocity, 690, scale);
80771 Gore.NewGore(position, velocity, 691, scale);
80772 }
80773 }
80774 else if (type == 479)
80775 {
80776 if (life > 0)
80777 {
80778 for (int num225 = 0; (double)num225 < dmg / (double)lifeMax * 100.0; num225++)
80779 {
80780 Dust.NewDust(position, width, height, 237, hitDirection, -1f);
80781 }
80782 }
80783 else
80784 {
80785 for (int num226 = 0; num226 < 50; num226++)
80786 {
80787 Dust.NewDust(position, width, height, 237, 2.5f * (float)hitDirection, -2.5f);
80788 }
80789 Gore.NewGore(position, velocity, 681, scale);
80790 Gore.NewGore(position, velocity, 682, scale);
80791 Gore.NewGore(position, velocity, 683, scale);
80792 }
80793 }
80794 else if (type == 478)
80795 {
80796 if (life > 0)
80797 {
80798 for (int num227 = 0; num227 < 10; num227++)
80799 {
80800 int num228 = Dust.NewDust(position, width, height, 238, hitDirection, -1f);
80801 Main.dust[num228].noGravity = true;
80802 }
80803 }
80804 else
80805 {
80806 for (int num229 = 0; num229 < 50; num229++)
80807 {
80808 Dust.NewDust(position, width, height, 237 + Main.rand.Next(2), 2.5f * (float)hitDirection, -2.5f);
80809 }
80810 Gore.NewGore(position, velocity, 684, scale);
80811 Gore.NewGore(position, velocity, 685, scale);
80812 Gore.NewGore(position, velocity, 686, scale);
80813 Gore.NewGore(position, velocity, 684 + Main.rand.Next(3), scale);
80814 }
80815 }
80816 else if (type == 466)
80817 {
80818 if (life > 0)
80819 {
80820 for (int num230 = 0; (double)num230 < dmg / (double)lifeMax * 100.0; num230++)
80821 {
80822 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
80823 }
80824 }
80825 else
80826 {
80827 for (int num231 = 0; num231 < 50; num231++)
80828 {
80829 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
80830 }
80831 Gore.NewGore(position, velocity, 656, scale);
80832 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 657, scale);
80833 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 659, scale);
80834 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 658, scale);
80835 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 658, scale);
80836 }
80837 }
80838 else if (type == 468)
80839 {
80840 if (life > 0)
80841 {
80842 for (int num232 = 0; (double)num232 < dmg / (double)lifeMax * 100.0; num232++)
80843 {
80844 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
80845 }
80846 }
80847 else
80848 {
80849 for (int num233 = 0; num233 < 50; num233++)
80850 {
80851 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
80852 }
80853 Gore.NewGore(position, velocity, 662, scale);
80854 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 663, scale);
80855 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 663, scale);
80856 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 664, scale);
80857 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 664, scale);
80858 }
80859 }
80860 else if (type == 469)
80861 {
80862 if (life > 0)
80863 {
80864 for (int num234 = 0; (double)num234 < dmg / (double)lifeMax * 100.0; num234++)
80865 {
80866 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
80867 }
80868 }
80869 else
80870 {
80871 for (int num235 = 0; num235 < 50; num235++)
80872 {
80873 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
80874 }
80875 Gore.NewGore(position, velocity, 665, scale);
80876 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 666, scale);
80877 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 666, scale);
80878 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 667, scale);
80879 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 667, scale);
80880 }
80881 }
80882 else if (type == 463)
80883 {
80884 if (life > 0)
80885 {
80886 for (int num236 = 0; (double)num236 < dmg / (double)lifeMax * 100.0; num236++)
80887 {
80888 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
80889 }
80890 }
80891 else
80892 {
80893 for (int num237 = 0; num237 < 50; num237++)
80894 {
80895 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
80896 }
80897 Gore.NewGore(position, velocity, 653, scale);
80898 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 654, scale);
80899 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 654, scale);
80900 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 655, scale);
80901 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 655, scale);
80902 }
80903 }
80904 else if (type == 461)
80905 {
80906 if (life > 0)
80907 {
80908 for (int num238 = 0; (double)num238 < dmg / (double)lifeMax * 100.0; num238++)
80909 {
80910 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
80911 }
80912 }
80913 else
80914 {
80915 for (int num239 = 0; num239 < 50; num239++)
80916 {
80917 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
80918 }
80919 Gore.NewGore(position, velocity, 647, scale);
80920 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 648, scale);
80921 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 648, scale);
80922 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 649, scale);
80923 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 649, scale);
80924 }
80925 }
80926 else if (type == 462)
80927 {
80928 if (life > 0)
80929 {
80930 for (int num240 = 0; (double)num240 < dmg / (double)lifeMax * 100.0; num240++)
80931 {
80932 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
80933 }
80934 }
80935 else
80936 {
80937 for (int num241 = 0; num241 < 50; num241++)
80938 {
80939 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
80940 }
80941 Gore.NewGore(position, velocity, 650, scale);
80942 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 651, scale);
80943 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 651, scale);
80944 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 652, scale);
80945 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 652, scale);
80946 }
80947 }
80948 else if (type == 379 || type == 438)
80949 {
80950 if (life > 0)
80951 {
80952 for (int num242 = 0; (double)num242 < dmg / (double)(lifeMax * 50); num242++)
80953 {
80954 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
80955 }
80956 }
80957 else
80958 {
80959 for (int num243 = 0; num243 < 30; num243++)
80960 {
80961 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
80962 }
80963 Gore.NewGore(position, velocity, 900, scale);
80964 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 901, scale);
80965 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 901, scale);
80966 }
80967 }
80968 else if (type == 439)
80969 {
80970 if (life > 0)
80971 {
80972 for (int num244 = 0; (double)num244 < dmg / (double)lifeMax * 100.0; num244++)
80973 {
80974 int num245 = Dust.NewDust(position, width, height, 5, 0f, 0f, 0, default(Color), 1.5f);
80975 Dust dust = Main.dust[num245];
80976 dust.velocity *= 1.5f;
80977 Main.dust[num245].noGravity = true;
80978 }
80979 }
80980 else
80981 {
80982 for (int num246 = 0; num246 < 30; num246++)
80983 {
80984 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
80985 }
80986 for (int num247 = 0; num247 < 10; num247++)
80987 {
80988 int num248 = Dust.NewDust(position, width, height, 16, 0f, 0f, 0, default(Color), 1.5f);
80989 Dust dust = Main.dust[num248];
80990 dust.velocity *= 2f;
80991 Main.dust[num248].noGravity = true;
80992 }
80993 int num249 = Main.rand.Next(1, 4);
80994 for (int num250 = 0; num250 < num249; num250++)
80995 {
80996 int num251 = Gore.NewGore(new Vector2(position.X, position.Y + (float)(height / 2) - 10f), new Vector2(hitDirection, 0f), Main.rand.Next(11, 14), scale);
80997 Gore gore2 = Main.gore[num251];
80998 gore2.velocity *= 0.8f;
80999 }
81000 Gore.NewGore(position, velocity, 902, scale);
81001 Gore.NewGore(new Vector2(position.X, position.Y + 10f), velocity, 903, scale);
81002 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 901, scale);
81003 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 901, scale);
81004 }
81005 }
81006 else if (type == 440)
81007 {
81008 if (life <= 0)
81009 {
81010 for (int num252 = 0; num252 < 10; num252++)
81011 {
81012 int num253 = Dust.NewDust(position, width, height, 16, 0f, 0f, 0, default(Color), 1.5f);
81013 Dust dust = Main.dust[num253];
81014 dust.velocity *= 2f;
81015 Main.dust[num253].noGravity = true;
81016 }
81017 int num254 = Main.rand.Next(1, 4);
81018 for (int num255 = 0; num255 < num254; num255++)
81019 {
81020 int num256 = Gore.NewGore(new Vector2(position.X, position.Y + (float)(height / 2) - 10f), new Vector2(hitDirection, 0f), Main.rand.Next(11, 14), scale);
81021 Gore gore2 = Main.gore[num256];
81022 gore2.velocity *= 0.8f;
81023 }
81024 }
81025 }
81026 else if (type >= 454 && type <= 459)
81027 {
81028 if (life > 0)
81029 {
81030 for (int num257 = 0; (double)num257 < dmg / (double)lifeMax * 50.0; num257++)
81031 {
81032 int num258 = Dust.NewDust(position, width, height, 16, 0f, 0f, 0, default(Color), 1.5f);
81033 Dust dust = Main.dust[num258];
81034 dust.velocity *= 1.5f;
81035 Main.dust[num258].noGravity = true;
81036 }
81037 }
81038 else
81039 {
81040 for (int num259 = 0; num259 < 10; num259++)
81041 {
81042 int num260 = Dust.NewDust(position, width, height, 16, 0f, 0f, 0, default(Color), 1.5f);
81043 Dust dust = Main.dust[num260];
81044 dust.velocity *= 2f;
81045 Main.dust[num260].noGravity = true;
81046 }
81047 int num261 = Main.rand.Next(1, 4);
81048 for (int num262 = 0; num262 < num261; num262++)
81049 {
81050 int num263 = Gore.NewGore(new Vector2(position.X, position.Y + (float)(height / 2) - 10f), new Vector2(hitDirection, 0f), Main.rand.Next(11, 14), scale);
81051 Gore gore2 = Main.gore[num263];
81052 gore2.velocity *= 0.8f;
81053 }
81054 }
81055 }
81056 if (type == 372 || type == 373)
81057 {
81058 if (life > 0)
81059 {
81060 for (int num264 = 0; (double)num264 < dmg / (double)lifeMax * 100.0; num264++)
81061 {
81062 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
81063 }
81064 }
81065 else
81066 {
81067 for (int num265 = 0; num265 < 75; num265++)
81068 {
81069 int num266 = Dust.NewDust(base.Center - Vector2.One * 25f, 50, 50, 5, 2 * hitDirection, -2f);
81070 Dust dust = Main.dust[num266];
81071 dust.velocity /= 2f;
81072 }
81073 Gore.NewGore(base.Center, velocity * 0.8f, 583);
81074 Gore.NewGore(base.Center, velocity * 0.8f, 577);
81075 Gore.NewGore(base.Center, velocity * 0.9f, 578);
81076 Gore.NewGore(base.Center, velocity, 579);
81077 }
81078 }
81079 if (type == 371)
81080 {
81081 SoundEngine.PlaySound(4, (int)position.X, (int)position.Y, 3);
81082 if (life <= 0)
81083 {
81084 Vector2 center = base.Center;
81085 for (int num267 = 0; num267 < 60; num267++)
81086 {
81087 int num268 = 25;
81088 Vector2 vector24 = ((float)Main.rand.NextDouble() * ((float)Math.PI * 2f)).ToRotationVector2() * Main.rand.Next(24, 41) / 8f;
81089 int num269 = Dust.NewDust(base.Center - Vector2.One * num268, num268 * 2, num268 * 2, 212);
81090 Dust dust61 = Main.dust[num269];
81091 Vector2 vector25 = Vector2.Normalize(dust61.position - base.Center);
81092 dust61.position = base.Center + vector25 * 25f * scale;
81093 if (num267 < 30)
81094 {
81095 dust61.velocity = vector25 * dust61.velocity.Length();
81096 }
81097 else
81098 {
81099 dust61.velocity = vector25 * Main.rand.Next(45, 91) / 10f;
81100 }
81101 dust61.color = Main.hslToRgb((float)(0.4000000059604645 + Main.rand.NextDouble() * 0.20000000298023224), 0.9f, 0.5f);
81102 dust61.color = Color.Lerp(dust61.color, Color.White, 0.3f);
81103 dust61.noGravity = true;
81104 dust61.scale = 0.7f;
81105 }
81106 }
81107 }
81108 if (type == 370)
81109 {
81110 if (life > 0)
81111 {
81112 for (int num270 = 0; (double)num270 < dmg / (double)lifeMax * 100.0; num270++)
81113 {
81114 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
81115 }
81116 }
81117 else
81118 {
81119 for (int num271 = 0; num271 < 150; num271++)
81120 {
81121 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
81122 }
81123 Gore.NewGore(base.Center - Vector2.UnitX * 20f * direction, velocity, 576, scale);
81124 Gore.NewGore(base.Center - Vector2.UnitY * 30f, velocity, 574, scale);
81125 Gore.NewGore(base.Center, velocity, 575, scale);
81126 Gore.NewGore(base.Center + Vector2.UnitX * 20f * direction, velocity, 573, scale);
81127 Gore.NewGore(base.Center - Vector2.UnitY * 30f, velocity, 574, scale);
81128 Gore.NewGore(base.Center, velocity, 575, scale);
81129 }
81130 }
81131 else if (type == 381)
81132 {
81133 if (life > 0)
81134 {
81135 for (int num272 = 0; (double)num272 < dmg / (double)(lifeMax * 50); num272++)
81136 {
81137 Dust.NewDust(position, width, height, 227, hitDirection, -1f);
81138 }
81139 }
81140 else
81141 {
81142 for (int num273 = 0; num273 < 30; num273++)
81143 {
81144 Dust.NewDust(position, width, height, 227, 2.5f * (float)hitDirection, -2.5f);
81145 }
81146 Gore.NewGore(position, velocity, 587, scale);
81147 Gore.NewGore(position, velocity, 590, scale);
81148 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 588, scale);
81149 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 589, scale);
81150 }
81151 }
81152 else if (type == 382 || type == 390)
81153 {
81154 if (life > 0)
81155 {
81156 for (int num274 = 0; (double)num274 < dmg / (double)(lifeMax * 50); num274++)
81157 {
81158 Dust.NewDust(position, width, height, 227, hitDirection, -1f);
81159 }
81160 }
81161 else
81162 {
81163 for (int num275 = 0; num275 < 30; num275++)
81164 {
81165 Dust.NewDust(position, width, height, 227, 2.5f * (float)hitDirection, -2.5f);
81166 }
81167 Gore.NewGore(position, velocity, 591, scale);
81168 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 592, scale);
81169 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 593, scale);
81170 }
81171 }
81172 else if (type == 383)
81173 {
81174 if (life > 0)
81175 {
81176 for (int num276 = 0; (double)num276 < dmg / (double)(lifeMax * 50); num276++)
81177 {
81178 Dust.NewDust(position, width, height, 227, hitDirection, -1f);
81179 }
81180 }
81181 else
81182 {
81183 for (int num277 = 0; num277 < 30; num277++)
81184 {
81185 Dust.NewDust(position, width, height, 227, 2.5f * (float)hitDirection, -2.5f);
81186 }
81187 Gore.NewGore(position, velocity, 594, scale);
81188 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 595, scale);
81189 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 596, scale);
81190 }
81191 }
81192 else if (type == 384)
81193 {
81194 if (life > 0)
81195 {
81196 for (int num278 = 0; (double)num278 < dmg / (double)lifeMax * 50.0; num278++)
81197 {
81198 int num279 = Dust.NewDust(position, width, height, 226, -1 * hitDirection, -1f);
81199 Main.dust[num279].position = Vector2.Lerp(Main.dust[num279].position, base.Center, 0.25f);
81200 Main.dust[num279].scale = 0.5f;
81201 }
81202 }
81203 else
81204 {
81205 for (int num280 = 0; num280 < 70; num280++)
81206 {
81207 int num281 = Dust.NewDust(position, width, height, 226, -2.5f * (float)hitDirection, -2.5f);
81208 Main.dust[num281].scale = 0.5f;
81209 }
81210 }
81211 }
81212 else if (type == 385)
81213 {
81214 if (life > 0)
81215 {
81216 for (int num282 = 0; (double)num282 < dmg / (double)(lifeMax * 50); num282++)
81217 {
81218 Dust.NewDust(position, width, height, 227, hitDirection, -1f);
81219 }
81220 }
81221 else
81222 {
81223 for (int num283 = 0; num283 < 30; num283++)
81224 {
81225 Dust.NewDust(position, width, height, 227, 2.5f * (float)hitDirection, -2.5f);
81226 }
81227 Gore.NewGore(position, velocity, 597, scale);
81228 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 598, scale);
81229 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 599, scale);
81230 }
81231 }
81232 else if (type == 386)
81233 {
81234 if (life > 0)
81235 {
81236 for (int num284 = 0; (double)num284 < dmg / (double)(lifeMax * 50); num284++)
81237 {
81238 Dust.NewDust(position, width, height, 227, hitDirection, -1f);
81239 }
81240 }
81241 else
81242 {
81243 for (int num285 = 0; num285 < 30; num285++)
81244 {
81245 Dust.NewDust(position, width, height, 227, 2.5f * (float)hitDirection, -2.5f);
81246 }
81247 Gore.NewGore(position, velocity, 600, scale);
81248 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 601, scale);
81249 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 602, scale);
81250 }
81251 }
81252 if (type == 387)
81253 {
81254 if (life > 0)
81255 {
81256 for (int num286 = 0; (double)num286 < dmg / (double)lifeMax * 20.0; num286++)
81257 {
81258 int num287 = Dust.NewDust(position, width, height, 226, -1 * hitDirection, -1f);
81259 Main.dust[num287].position = Vector2.Lerp(Main.dust[num287].position, base.Center, 0.25f);
81260 Main.dust[num287].scale = 0.5f;
81261 }
81262 }
81263 else
81264 {
81265 for (int num288 = 0; num288 < 30; num288++)
81266 {
81267 int num289 = Dust.NewDust(position, width, height, 226, -1.5f * (float)hitDirection, -1.5f);
81268 Main.dust[num289].scale = 0.5f;
81269 }
81270 Gore.NewGore(position, velocity, 603, scale);
81271 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 603, scale);
81272 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 604, scale);
81273 }
81274 }
81275 if (type == 520)
81276 {
81277 if (life > 0)
81278 {
81279 for (int num290 = 0; (double)num290 < dmg / (double)lifeMax * 20.0; num290++)
81280 {
81281 int num291 = Dust.NewDust(position, width, height, 226, -1 * hitDirection, -1f);
81282 Main.dust[num291].position = Vector2.Lerp(Main.dust[num291].position, base.Center, 0.25f);
81283 Main.dust[num291].scale = 0.5f;
81284 }
81285 }
81286 else
81287 {
81288 for (int num292 = 0; num292 < 30; num292++)
81289 {
81290 int num293 = Dust.NewDust(position, width, height, 226, -1.5f * (float)hitDirection, -1.5f);
81291 Main.dust[num293].scale = 0.5f;
81292 }
81293 Gore.NewGore(position, velocity, 851, scale);
81294 Gore.NewGore(position, velocity, 852, scale);
81295 Gore.NewGore(new Vector2(position.X, position.Y + 80f), velocity, 848, scale);
81296 Gore.NewGore(new Vector2(position.X, position.Y + 80f), velocity, 849, scale);
81297 Gore.NewGore(new Vector2(position.X, position.Y + 80f), velocity, 850, scale);
81298 }
81299 }
81300 else if (type == 389)
81301 {
81302 if (life > 0)
81303 {
81304 for (int num294 = 0; (double)num294 < dmg / (double)(lifeMax * 50); num294++)
81305 {
81306 Dust.NewDust(position, width, height, 227, hitDirection, -1f);
81307 }
81308 }
81309 else
81310 {
81311 for (int num295 = 0; num295 < 30; num295++)
81312 {
81313 Dust.NewDust(position, width, height, 227, 2.5f * (float)hitDirection, -2.5f);
81314 }
81315 Gore.NewGore(position, velocity, 904, scale);
81316 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 905, scale);
81317 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 906, scale);
81318 }
81319 }
81320 else if (type == 388)
81321 {
81322 if (life > 0)
81323 {
81324 for (int num296 = 0; (double)num296 < dmg / (double)(lifeMax * 50); num296++)
81325 {
81326 int num297 = Dust.NewDust(position, width, height, 226, -1 * hitDirection, -1f);
81327 Main.dust[num297].position = Vector2.Lerp(Main.dust[num297].position, base.Center, 0.25f);
81328 Main.dust[num297].scale = 0.5f;
81329 }
81330 }
81331 else
81332 {
81333 for (int num298 = 0; num298 < 10; num298++)
81334 {
81335 int num299 = Dust.NewDust(position, width, height, 226, -2.5f * (float)hitDirection, -2.5f);
81336 Main.dust[num299].scale = 0.5f;
81337 }
81339 if (ai[0] == 3f)
81340 {
81341 vector26 = rotation.ToRotationVector2();
81342 if (spriteDirection == 1)
81343 {
81344 vector26.X *= -1f;
81345 }
81346 vector26 *= 5f;
81347 }
81348 Gore.NewGore(base.Center - new Vector2(10f, 10f), vector26, 605, scale);
81349 Gore.NewGore(base.Center - new Vector2(10f, 10f), vector26, 606, scale);
81350 }
81351 }
81352 else if (type == 399)
81353 {
81354 if (life > 0)
81355 {
81356 for (int num300 = 0; (double)num300 < dmg / (double)(lifeMax * 50); num300++)
81357 {
81358 int num301 = Dust.NewDust(position, width, height, 226, -1 * hitDirection, -1f);
81359 Main.dust[num301].position = Vector2.Lerp(Main.dust[num301].position, base.Center, 0.25f);
81360 Main.dust[num301].scale = 0.5f;
81361 }
81362 }
81363 else
81364 {
81365 for (int num302 = 0; num302 < 10; num302++)
81366 {
81367 int num303 = Dust.NewDust(position, width, height, 226, -2.5f * (float)hitDirection, -2.5f);
81368 Main.dust[num303].scale = 0.5f;
81369 }
81371 if (ai[0] == 3f)
81372 {
81373 vector27 = rotation.ToRotationVector2();
81374 if (spriteDirection == 1)
81375 {
81376 vector27.X *= -1f;
81377 }
81378 vector27 *= 5f;
81379 }
81380 Gore.NewGore(base.Center - new Vector2(10f, 10f), vector27, 898, scale);
81381 Gore.NewGore(base.Center - new Vector2(10f, 10f), vector27, 899, scale);
81382 }
81383 }
81384 else if (type == 391)
81385 {
81386 if (life > 0)
81387 {
81388 for (int num304 = 0; (double)num304 < dmg / (double)(lifeMax * 50); num304++)
81389 {
81390 Dust.NewDust(position, width, height, 227, hitDirection, -1f);
81391 }
81392 }
81393 else
81394 {
81395 for (int num305 = 0; num305 < 30; num305++)
81396 {
81397 Dust.NewDust(position, width, height, 227, 2.5f * (float)hitDirection, -2.5f);
81398 }
81399 Gore.NewGore(position + Vector2.UnitX * width / 2f, velocity, 607, scale);
81400 Gore.NewGore(position + Vector2.UnitX * width / 2f, velocity, 608, scale);
81401 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 609, scale);
81402 }
81403 }
81404 if (type == 392 || type == 394 || type == 393 || type == 395)
81405 {
81406 if (life > 0)
81407 {
81408 for (int num306 = 0; (double)num306 < dmg / (double)lifeMax * 20.0; num306++)
81409 {
81410 int num307 = Dust.NewDust(position, width, height, 228, -1 * hitDirection, -1f);
81411 Main.dust[num307].position = Vector2.Lerp(Main.dust[num307].position, base.Center, 0.25f);
81412 Main.dust[num307].scale = 0.5f;
81413 }
81414 }
81415 else
81416 {
81417 for (int num308 = 0; num308 < 30; num308++)
81418 {
81419 int num309 = Dust.NewDust(position, width, height, 228, -1.5f * (float)hitDirection, -1.5f);
81420 Main.dust[num309].scale = 0.5f;
81421 }
81422 Vector2 center2 = base.Center;
81423 if (type == 395)
81424 {
81425 Gore.NewGore(center2 + new Vector2(-20f, -10f), velocity, 610, scale);
81426 Gore.NewGore(center2 + new Vector2(20f, -10f), velocity, 611, scale);
81427 Gore.NewGore(center2 + new Vector2(-50f, 0f), velocity, 612, scale);
81428 Gore.NewGore(center2 + new Vector2(50f, 0f), velocity, 613, scale);
81429 Gore.NewGore(center2 + new Vector2(-60f, 10f), velocity, 614, scale);
81430 Gore.NewGore(center2 + new Vector2(0f, 30f), velocity, 615, scale);
81431 }
81432 if (type == 393)
81433 {
81434 Gore.NewGore(center2, velocity, 616, scale);
81435 }
81436 if (type == 394)
81437 {
81438 Gore.NewGore(center2, velocity, 617, scale);
81439 }
81440 }
81441 }
81442 else if (type == 482 || type == 483)
81443 {
81444 if (life > 0)
81445 {
81446 for (int num310 = 0; (double)num310 < dmg / (double)(lifeMax * 50); num310++)
81447 {
81448 Dust.NewDust(position, width, height, 240, hitDirection, -1f);
81449 }
81450 }
81451 else
81452 {
81453 for (int num311 = 0; num311 < 30; num311++)
81454 {
81455 Dust.NewDust(position, width, height, 240, 2.5f * (float)hitDirection, -2.5f);
81456 }
81457 if (type == 482)
81458 {
81459 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 718, scale);
81460 Gore.NewGore(new Vector2(position.X, position.Y + 10f), velocity, 719, scale);
81461 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 720, scale);
81462 Gore.NewGore(new Vector2(position.X, position.Y + 40f), velocity, 721, scale);
81463 }
81464 }
81465 }
81466 else if (type == 631)
81467 {
81468 if (life > 0)
81469 {
81470 for (int num312 = 0; (double)num312 < dmg / (double)(lifeMax * 50); num312++)
81471 {
81472 Dust.NewDust(position, width, height, 1, hitDirection, -1f);
81473 }
81474 }
81475 else
81476 {
81477 for (int num313 = 0; num313 < 30; num313++)
81478 {
81479 Dust.NewDust(position, width, height, 1, 2.5f * (float)hitDirection, -2.5f);
81480 }
81481 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 1210, scale);
81482 Gore.NewGore(new Vector2(position.X, position.Y + 10f), velocity, 1211, scale);
81483 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 1212, scale);
81484 Gore.NewGore(new Vector2(position.X, position.Y + 40f), velocity, 1213, scale);
81485 }
81486 }
81487 if ((type >= 442 && type <= 448) || type == 539 || type == 592 || type == 593 || type == 601 || type == 605 || type == 627)
81488 {
81489 if (life > 0)
81490 {
81491 for (int num314 = 0; num314 < 10; num314++)
81492 {
81493 Dust.NewDust(position, width, height, Main.rand.Next(232, 234), hitDirection, -1f);
81494 }
81495 }
81496 else
81497 {
81498 for (int num315 = 0; num315 < 20; num315++)
81499 {
81500 Dust.NewDust(position, width, height, Main.rand.Next(232, 234), 2 * hitDirection, -2f);
81501 }
81502 }
81503 }
81504 if (type == 653 && life <= 0)
81505 {
81506 for (int num316 = 0; num316 < 6; num316++)
81507 {
81508 int num317 = Dust.NewDust(position, width, height, 174, 2 * hitDirection, -2f);
81509 if (Main.rand.Next(2) == 0)
81510 {
81511 Main.dust[num317].noGravity = true;
81512 Main.dust[num317].scale = 1.5f * scale;
81513 }
81514 else
81515 {
81516 Main.dust[num317].scale = 0.8f * scale;
81517 }
81518 }
81519 }
81520 if (type == 333 || type == 334 || type == 335 || type == 336)
81521 {
81523 if (type == 333)
81524 {
81525 newColor7 = new Color(73, 147, 221, 200);
81526 }
81527 if (type == 334)
81528 {
81529 newColor7 = new Color(24, 146, 79, 200);
81530 }
81531 if (type == 335)
81532 {
81533 newColor7 = new Color(194, 46, 50, 200);
81534 }
81535 if (type == 336)
81536 {
81537 newColor7 = new Color(228, 200, 1, 200);
81538 }
81539 if (life > 0)
81540 {
81541 for (int num318 = 0; (double)num318 < dmg / (double)lifeMax * 100.0; num318++)
81542 {
81543 Dust.NewDust(position, width, height, 4, hitDirection, -1f, 150, newColor7);
81544 }
81545 }
81546 else
81547 {
81548 for (int num319 = 0; num319 < 50; num319++)
81549 {
81550 Dust.NewDust(position, width, height, 4, 2 * hitDirection, -2f, 150, newColor7);
81551 }
81552 }
81553 }
81554 if (type == 537)
81555 {
81556 if (life > 0)
81557 {
81558 for (int num320 = 0; (double)num320 < dmg / (double)lifeMax * 100.0; num320++)
81559 {
81560 Dust.NewDust(position, width, height, 32, hitDirection, -1f);
81561 }
81562 }
81563 else
81564 {
81565 for (int num321 = 0; num321 < 50; num321++)
81566 {
81567 Dust.NewDust(position, width, height, 32, 2 * hitDirection, -2f);
81568 }
81569 }
81570 }
81571 if (type == 1 || type == 16 || type == 71 || type == 244 || type == 535)
81572 {
81573 if (life > 0)
81574 {
81575 for (int num322 = 0; (double)num322 < dmg / (double)lifeMax * 100.0; num322++)
81576 {
81577 Dust.NewDust(position, width, height, 4, hitDirection, -1f, alpha, this.color);
81578 }
81579 }
81580 else
81581 {
81582 for (int num323 = 0; num323 < 50; num323++)
81583 {
81584 Dust.NewDust(position, width, height, 4, 2 * hitDirection, -2f, alpha, this.color);
81585 }
81586 if (Main.netMode != 1 && type == 16)
81587 {
81588 int num324 = Main.rand.Next(2) + 2;
81589 for (int num325 = 0; num325 < num324; num325++)
81590 {
81591 int num326 = NewNPC(GetSpawnSource_NPCHurt(), (int)(position.X + (float)(width / 2)), (int)(position.Y + (float)height), 1);
81592 Main.npc[num326].SetDefaults(-5);
81593 Main.npc[num326].velocity.X = velocity.X * 2f;
81594 Main.npc[num326].velocity.Y = velocity.Y;
81595 Main.npc[num326].velocity.X += (float)Main.rand.Next(-20, 20) * 0.1f + (float)(num325 * direction) * 0.3f;
81596 Main.npc[num326].velocity.Y -= (float)Main.rand.Next(0, 10) * 0.1f + (float)num325;
81597 Main.npc[num326].ai[0] = -1000 * Main.rand.Next(3);
81598 if (Main.netMode == 2 && num326 < 200)
81599 {
81600 NetMessage.SendData(23, -1, -1, null, num326);
81601 }
81602 }
81603 }
81604 }
81605 }
81606 if (type == 352)
81607 {
81608 if (life > 0)
81609 {
81610 for (int num327 = 0; (double)num327 < dmg / (double)lifeMax * 100.0; num327++)
81611 {
81612 int num328 = Dust.NewDust(position, width, height, 67, hitDirection, -1f);
81613 Main.dust[num328].noGravity = true;
81614 }
81615 }
81616 else
81617 {
81618 for (int num329 = 0; num329 < 60; num329++)
81619 {
81620 int num330 = Dust.NewDust(position, width, height, 67, 2 * hitDirection, -2f);
81621 Main.dust[num330].noGravity = true;
81622 }
81623 }
81624 }
81625 if (type >= 305 && type <= 314)
81626 {
81627 if (life > 0)
81628 {
81629 for (int num331 = 0; (double)num331 < dmg / (double)lifeMax * 100.0; num331++)
81630 {
81631 Dust.NewDust(position, width, height, 194, hitDirection, -1f, 0, default(Color), 1.1f);
81632 }
81633 }
81634 else
81635 {
81636 for (int num332 = 0; num332 < 60; num332++)
81637 {
81638 Dust.NewDust(position, width, height, 194, 2 * hitDirection, -2f, 0, default(Color), 1.1f);
81639 }
81640 Gore.NewGore(position, velocity, 441, scale);
81641 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 442, scale);
81642 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 443, scale);
81643 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 444, scale);
81644 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 445, scale);
81645 }
81646 }
81647 if (type == 327)
81648 {
81649 if (life > 0)
81650 {
81651 for (int num333 = 0; (double)num333 < dmg / (double)lifeMax * 100.0; num333++)
81652 {
81653 Dust.NewDust(position, width, height, 189, hitDirection, -1f, 0, default(Color), 1.1f);
81654 }
81655 }
81656 else
81657 {
81658 for (int num334 = 0; num334 < 60; num334++)
81659 {
81660 Dust.NewDust(position, width, height, 189, 2 * hitDirection, -2f, 0, default(Color), 1.1f);
81661 }
81662 for (int num335 = 476; num335 <= 484; num335++)
81663 {
81664 Gore.NewGore(new Vector2(position.X, position.Y), velocity * 0f, num335, scale);
81665 }
81666 }
81667 }
81668 if (type == 325)
81669 {
81670 if (life > 0)
81671 {
81672 for (int num336 = 0; (double)num336 < dmg / (double)lifeMax * 100.0; num336++)
81673 {
81674 Dust.NewDust(position, width, height, 191, hitDirection, -1f, 0, default(Color), 1.1f);
81675 }
81676 }
81677 else
81678 {
81679 for (int num337 = 0; num337 < 60; num337++)
81680 {
81681 Dust.NewDust(position, width, height, 191, 2 * hitDirection, -2f, 0, default(Color), 1.1f);
81682 }
81683 for (int num338 = 469; num338 <= 475; num338++)
81684 {
81685 Gore.NewGore(new Vector2(position.X, position.Y), velocity * 0f, num338, scale);
81686 }
81687 }
81688 }
81689 if (type == 345 && life <= 0)
81690 {
81691 Gore.NewGore(new Vector2(position.X, position.Y), velocity * 0f, 513, scale);
81692 Gore.NewGore(new Vector2(position.X, position.Y), velocity * 0f, 514, scale);
81693 Gore.NewGore(new Vector2(position.X, position.Y), velocity * 0f, 514, scale);
81694 Gore.NewGore(new Vector2(position.X, position.Y), velocity * 0f, 515, scale);
81695 Gore.NewGore(new Vector2(position.X, position.Y), velocity * 0f, 516, scale);
81696 }
81697 if (type == 344)
81698 {
81699 if (life > 0)
81700 {
81701 for (int num339 = 0; (double)num339 < dmg / (double)lifeMax * 100.0; num339++)
81702 {
81703 Dust.NewDust(position, width, height, 196, hitDirection, -1f);
81704 }
81705 }
81706 else
81707 {
81708 for (int num340 = 0; num340 < 60; num340++)
81709 {
81710 Dust.NewDust(position, width, height, 196, 2 * hitDirection, -2f);
81711 }
81712 for (int num341 = 508; num341 <= 512; num341++)
81713 {
81714 Gore.NewGore(new Vector2(position.X, position.Y), velocity * 0f, num341, scale);
81715 }
81716 for (int num342 = 509; num342 <= 512; num342++)
81717 {
81718 Gore.NewGore(new Vector2(position.X, position.Y), velocity * 0f, num342, scale);
81719 }
81720 }
81721 }
81722 if (type == 326)
81723 {
81724 if (life > 0)
81725 {
81726 for (int num343 = 0; (double)num343 < dmg / (double)lifeMax * 100.0; num343++)
81727 {
81728 Dust.NewDust(position, width, height, 191, hitDirection, -1f, 0, default(Color), 1.1f);
81729 }
81730 }
81731 else
81732 {
81733 for (int num344 = 0; num344 < 60; num344++)
81734 {
81735 Dust.NewDust(position, width, height, 191, 2 * hitDirection, -2f, 0, default(Color), 1.1f);
81736 }
81737 }
81738 }
81739 if (type == 304)
81740 {
81741 if (life > 0)
81742 {
81743 for (int num345 = 0; (double)num345 < dmg / (double)lifeMax * 100.0; num345++)
81744 {
81745 Dust.NewDust(position, width, height, 189, hitDirection, -1f, 0, default(Color), 1.3f);
81746 }
81747 }
81748 else
81749 {
81750 for (int num346 = 0; num346 < 60; num346++)
81751 {
81752 Dust.NewDust(position, width, height, 189, 2 * hitDirection, -2f, 0, default(Color), 1.3f);
81753 }
81754 }
81755 }
81756 if (type == 302)
81757 {
81758 if (life > 0)
81759 {
81760 for (int num347 = 0; (double)num347 < dmg / (double)lifeMax * 100.0; num347++)
81761 {
81762 Dust.NewDust(position, width, height, 192, hitDirection, -1f, 100, new Color(100, 100, 100, 100));
81763 }
81764 }
81765 else
81766 {
81767 for (int num348 = 0; num348 < 50; num348++)
81768 {
81769 Dust.NewDust(position, width, height, 192, 2 * hitDirection, -2f, 100, new Color(100, 100, 100, 100));
81770 }
81771 Gore.NewGore(position, velocity, 440, scale);
81772 }
81773 }
81774 if (type >= 245 && type <= 249)
81775 {
81776 if (life > 0)
81777 {
81778 for (int num349 = 0; (double)num349 < dmg / (double)lifeMax * 100.0; num349++)
81779 {
81780 Dust.NewDust(position, width, height, 148, hitDirection, -1f);
81781 }
81782 }
81783 else if (type == 246)
81784 {
81785 if (Main.netMode != 1)
81786 {
81787 NewNPC(GetSpawnSource_NPCHurt(), (int)base.Center.X, (int)position.Y + height, 249, whoAmI);
81788 }
81789 }
81790 else
81791 {
81792 for (int num350 = 0; num350 < 50; num350++)
81793 {
81794 Dust.NewDust(position, width, height, 148, 2 * hitDirection, -2f);
81795 }
81796 if (type == 245)
81797 {
81798 Gore.NewGore(new Vector2(position.X + (float)Main.rand.Next(width), position.Y + (float)Main.rand.Next(height)), velocity, 368, scale);
81799 Gore.NewGore(new Vector2(position.X + (float)Main.rand.Next(width), position.Y + (float)Main.rand.Next(height)), velocity, 370, scale);
81800 Gore.NewGore(new Vector2(position.X + (float)Main.rand.Next(width), position.Y + (float)Main.rand.Next(height)), velocity, 368, scale);
81801 Gore.NewGore(new Vector2(position.X + (float)Main.rand.Next(width), position.Y + (float)Main.rand.Next(height)), velocity, 370, scale);
81802 Gore.NewGore(new Vector2(position.X + (float)Main.rand.Next(width), position.Y + (float)Main.rand.Next(height)), velocity, 368, scale);
81803 Gore.NewGore(new Vector2(position.X + (float)Main.rand.Next(width), position.Y + (float)Main.rand.Next(height)), velocity, 370, scale);
81804 Gore.NewGore(position, velocity, 360, scale);
81805 Gore.NewGore(position, velocity, 361, scale);
81806 Gore.NewGore(position, velocity, 362, scale);
81807 Gore.NewGore(position, velocity, 363, scale);
81808 Gore.NewGore(position, velocity, 364, scale);
81809 Gore.NewGore(position, velocity, 367, scale);
81810 Gore.NewGore(position, velocity, 366, scale);
81811 }
81812 else if (type == 249)
81813 {
81814 Gore.NewGore(new Vector2(position.X + (float)Main.rand.Next(width), position.Y + (float)Main.rand.Next(height)), velocity, 368, scale);
81815 Gore.NewGore(new Vector2(position.X + (float)Main.rand.Next(width), position.Y + (float)Main.rand.Next(height)), velocity, 370, scale);
81816 Gore.NewGore(new Vector2(position.X + (float)Main.rand.Next(width), position.Y + (float)Main.rand.Next(height)), velocity, 368, scale);
81817 Gore.NewGore(new Vector2(position.X + (float)Main.rand.Next(width), position.Y + (float)Main.rand.Next(height)), velocity, 370, scale);
81818 Gore.NewGore(position, velocity, 365, scale);
81819 Gore.NewGore(position, velocity, 363, scale);
81820 Gore.NewGore(position, velocity, 362, scale);
81821 }
81822 else
81823 {
81824 Gore.NewGore(position, velocity, 369, scale);
81825 Gore.NewGore(position, velocity, 371, scale);
81826 Gore.NewGore(position, velocity, 370, scale);
81827 }
81828 }
81829 }
81830 if (type == 288 && life <= 0)
81831 {
81832 for (int num351 = 0; num351 < 50; num351++)
81833 {
81834 int num352 = Dust.NewDust(position, width, height, 180, velocity.X, velocity.Y);
81835 Dust dust = Main.dust[num352];
81836 dust.velocity *= 2f;
81837 Main.dust[num352].noGravity = true;
81838 Main.dust[num352].scale = 1.4f;
81839 }
81840 }
81841 if (type == 204)
81842 {
81843 if (life > 0)
81844 {
81845 for (int num353 = 0; (double)num353 < dmg / (double)lifeMax * 100.0; num353++)
81846 {
81847 Dust.NewDust(position, width, height, 4, hitDirection, -1f, 100, new Color(149, 208, 104));
81848 }
81849 }
81850 else
81851 {
81852 for (int num354 = 0; num354 < 50; num354++)
81853 {
81854 Dust.NewDust(position, width, height, 4, 2 * hitDirection, -2f, 100, new Color(149, 208, 104));
81855 }
81856 }
81857 }
81858 if (type == 225)
81859 {
81860 if (life > 0)
81861 {
81862 for (int num355 = 0; (double)num355 < dmg / (double)lifeMax * 100.0; num355++)
81863 {
81864 Dust.NewDust(position, width, height, 4, hitDirection, -1f, 100, new Color(0, 80, 255, 100));
81865 }
81866 }
81867 else
81868 {
81869 for (int num356 = 0; num356 < 50; num356++)
81870 {
81871 Dust.NewDust(position, width, height, 4, 2 * hitDirection, -2f, 100, new Color(0, 80, 255, 100));
81872 }
81873 Gore.NewGore(position, velocity, 314, scale);
81874 }
81875 }
81876 if (type == 243)
81877 {
81878 if (life > 0)
81879 {
81880 for (int num357 = 0; (double)num357 < dmg / (double)lifeMax * 150.0; num357++)
81881 {
81882 Dust.NewDust(position, width, height, 161, hitDirection, -1f);
81883 }
81884 }
81885 else
81886 {
81887 for (int num358 = 0; num358 < 200; num358++)
81888 {
81889 Dust.NewDust(position, width, height, 161, 2 * hitDirection, -2f);
81890 }
81891 Gore.NewGore(position, velocity, 359, scale);
81892 }
81893 }
81894 if ((type == 210 || type == 211) && life <= 0)
81895 {
81896 for (int num359 = 0; num359 < 6; num359++)
81897 {
81898 int num360 = Dust.NewDust(position, width, height, 150, 2 * hitDirection, -2f);
81899 if (Main.rand.Next(2) == 0)
81900 {
81901 Main.dust[num360].noGravity = true;
81902 Main.dust[num360].scale = 1.5f;
81903 }
81904 else
81905 {
81906 Main.dust[num360].scale = 0.8f;
81907 }
81908 }
81909 }
81910 if ((type == 355 || type == 358 || type == 654) && life <= 0)
81911 {
81912 for (int num361 = 0; num361 < 6; num361++)
81913 {
81914 int num362 = Dust.NewDust(position, width, height, 198, 2 * hitDirection, -2f);
81915 if (Main.rand.Next(2) == 0)
81916 {
81917 Main.dust[num362].noGravity = true;
81918 Main.dust[num362].scale = 1.5f * scale;
81919 }
81920 else
81921 {
81922 Main.dust[num362].scale = 0.8f * scale;
81923 }
81924 }
81925 }
81926 if (type == 677 && life <= 0)
81927 {
81929 {
81930 PositionInWorld = base.Center,
81931 MovementVector = velocity
81932 });
81933 for (int num363 = 0; num363 < 6; num363++)
81934 {
81935 int num364 = Dust.NewDust(position, width, height, 310, 2 * hitDirection, -2f);
81936 if (Main.rand.Next(2) == 0)
81937 {
81938 Main.dust[num364].noGravity = true;
81939 Main.dust[num364].scale = 1.5f * scale;
81940 }
81941 else
81942 {
81943 Main.dust[num364].scale = 0.8f * scale;
81944 }
81945 }
81946 }
81947 if (type == 604 && life <= 0)
81948 {
81949 for (int num365 = 0; num365 < 6; num365++)
81950 {
81951 int num366 = Dust.NewDust(position, width, height, 198, 2 * hitDirection, -2f);
81952 if (Main.rand.Next(2) == 0)
81953 {
81954 Main.dust[num366].noGravity = true;
81955 Main.dust[num366].scale = 1.5f * scale;
81956 }
81957 else
81958 {
81959 Main.dust[num366].scale = 0.8f * scale;
81960 }
81961 }
81962 if (Main.rand.Next(2) == 0)
81963 {
81964 Gore.NewGore(position, velocity, 1148);
81965 }
81966 if (Main.rand.Next(2) == 0)
81967 {
81968 Gore.NewGore(position, velocity, 1149);
81969 }
81970 }
81971 if (type == 669 && life <= 0)
81972 {
81973 for (int num367 = 0; num367 < 6; num367++)
81974 {
81975 int num368 = Dust.NewDust(position, width, height, 198, 2 * hitDirection, -2f);
81976 if (Main.rand.Next(2) == 0)
81977 {
81978 Main.dust[num368].noGravity = true;
81979 Main.dust[num368].scale = 1.5f * scale;
81980 }
81981 else
81982 {
81983 Main.dust[num368].scale = 0.8f * scale;
81984 }
81985 }
81986 if (Main.rand.Next(2) == 0)
81987 {
81988 Gore.NewGore(position, velocity, 1275);
81989 }
81990 if (Main.rand.Next(2) == 0)
81991 {
81992 Gore.NewGore(position, velocity, 1276);
81993 }
81994 }
81995 if (type == 356 && life <= 0)
81996 {
81997 for (int num369 = 0; num369 < 6; num369++)
81998 {
81999 int num370 = Dust.NewDust(position, width, height, 199, 2 * hitDirection, -2f);
82000 if (Main.rand.Next(2) == 0)
82001 {
82002 Main.dust[num370].noGravity = true;
82003 Main.dust[num370].scale = 1.5f * scale;
82004 }
82005 else
82006 {
82007 Main.dust[num370].scale = 0.8f * scale;
82008 }
82009 }
82010 }
82011 if (type >= 484 && type <= 487 && life <= 0)
82012 {
82013 for (int num371 = 0; num371 < 6; num371++)
82014 {
82015 int num372 = Dust.NewDust(position, width, height, 248 + type - 484, 2 * hitDirection, -2f);
82016 if (Main.rand.Next(2) == 0)
82017 {
82018 Main.dust[num372].noGravity = true;
82019 Main.dust[num372].scale = 1.2f * scale;
82020 }
82021 else
82022 {
82023 Main.dust[num372].scale = 0.7f * scale;
82024 }
82025 }
82026 }
82027 if (type == 357 && life <= 0)
82028 {
82029 for (int num373 = 0; num373 < 6; num373++)
82030 {
82031 int num374 = Dust.NewDust(position, width, height, 200, 2 * hitDirection, -2f);
82032 if (Main.rand.Next(2) == 0)
82033 {
82034 Main.dust[num374].noGravity = true;
82035 Main.dust[num374].scale = 1.2f * scale;
82036 }
82037 else
82038 {
82039 Main.dust[num374].scale = 0.7f * scale;
82040 }
82041 }
82042 }
82043 if (type == 606 && life <= 0)
82044 {
82045 for (int num375 = 0; num375 < 6; num375++)
82046 {
82047 int num376 = Dust.NewDust(position, width, height, 124, 2 * hitDirection, -2f);
82048 if (Main.rand.Next(2) == 0)
82049 {
82050 Main.dust[num376].noGravity = true;
82051 Main.dust[num376].scale = 1.2f * scale;
82052 }
82053 else
82054 {
82055 Main.dust[num376].scale = 0.7f * scale;
82056 }
82057 }
82058 }
82059 if (type == 377 && life <= 0)
82060 {
82061 for (int num377 = 0; num377 < 6; num377++)
82062 {
82063 int num378 = Dust.NewDust(position, width, height, 40, 2 * hitDirection, -2f);
82064 if (Main.rand.Next(2) == 0)
82065 {
82066 Main.dust[num378].noGravity = true;
82067 Main.dust[num378].scale = 1.2f * scale;
82068 }
82069 else
82070 {
82071 Main.dust[num378].scale = 0.7f * scale;
82072 }
82073 }
82074 }
82075 if (type == 374 || type == 375)
82076 {
82077 for (int num379 = 0; num379 < 6; num379++)
82078 {
82079 int num380 = Dust.NewDust(position, width, height, 165, 0f, 0f, 50, default(Color), 1.5f);
82080 Dust dust = Main.dust[num380];
82081 dust.velocity *= 2f;
82082 Main.dust[num380].noGravity = true;
82083 }
82084 }
82085 if (type == 359)
82086 {
82087 if (life <= 0)
82088 {
82089 for (int num381 = 0; num381 < 6; num381++)
82090 {
82091 int num382 = Dust.NewDust(position, width, height, 201, 2 * hitDirection, -2f);
82092 if (Main.rand.Next(2) == 0)
82093 {
82094 Main.dust[num382].noGravity = true;
82095 Main.dust[num382].scale = 1.2f * scale;
82096 }
82097 else
82098 {
82099 Main.dust[num382].scale = 0.7f * scale;
82100 }
82101 }
82102 }
82103 Gore.NewGore(position, velocity, 547, scale);
82104 Gore.NewGore(position, velocity, 548, scale);
82105 }
82106 if (type == 360)
82107 {
82108 if (life <= 0)
82109 {
82110 for (int num383 = 0; num383 < 6; num383++)
82111 {
82112 int num384 = Dust.NewDust(position, width, height, 202, 2 * hitDirection, -2f);
82113 if (Main.rand.Next(2) == 0)
82114 {
82115 Main.dust[num384].noGravity = true;
82116 Main.dust[num384].scale = 1.2f * scale;
82117 }
82118 else
82119 {
82120 Main.dust[num384].scale = 0.7f * scale;
82121 }
82122 }
82123 }
82124 Gore.NewGore(position, velocity, 549, scale);
82125 Gore.NewGore(position, velocity, 550, scale);
82126 }
82127 if (type == 655)
82128 {
82129 if (life <= 0)
82130 {
82131 for (int num385 = 0; num385 < 6; num385++)
82132 {
82133 int num386 = Dust.NewDust(position, width, height, 174, 2 * hitDirection, -2f);
82134 if (Main.rand.Next(2) == 0)
82135 {
82136 Main.dust[num386].noGravity = true;
82137 Main.dust[num386].scale = 1.2f * scale;
82138 }
82139 else
82140 {
82141 Main.dust[num386].scale = 0.7f * scale;
82142 }
82143 }
82144 }
82145 Gore.NewGore(position, velocity, 1256, scale);
82146 }
82147 if (type == 154)
82148 {
82149 if (life > 0)
82150 {
82151 for (int num387 = 0; (double)num387 < dmg / (double)lifeMax * 50.0; num387++)
82152 {
82153 int num388 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 67, velocity.X, velocity.Y, 90, default(Color), 1.5f);
82154 Main.dust[num388].noGravity = true;
82155 Dust dust = Main.dust[num388];
82156 dust.velocity *= 0.2f;
82157 }
82158 }
82159 else
82160 {
82161 for (int num389 = 0; num389 < 50; num389++)
82162 {
82163 int num390 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 67, velocity.X, velocity.Y, 90, default(Color), 1.5f);
82164 Main.dust[num390].noGravity = true;
82165 Dust dust = Main.dust[num390];
82166 dust.velocity *= 0.2f;
82167 }
82168 Gore.NewGore(position, velocity, 180, scale);
82169 }
82170 }
82171 if (type == 147 || type == 184)
82172 {
82173 if (life > 0)
82174 {
82175 for (int num391 = 0; (double)num391 < dmg / (double)lifeMax * 50.0; num391++)
82176 {
82177 int num392 = Dust.NewDust(position, width, height, 76, hitDirection, -1f);
82178 Main.dust[num392].noGravity = true;
82179 Dust.NewDust(position, width, height, 4, hitDirection, -1f, 100, new Color(97, 200, 255, 100));
82180 }
82181 }
82182 else
82183 {
82184 for (int num393 = 0; num393 < 30; num393++)
82185 {
82186 int num394 = Dust.NewDust(position, width, height, 76, hitDirection, -2f);
82187 Main.dust[num394].noGravity = true;
82188 Dust.NewDust(position, width, height, 4, hitDirection, -2f, 100, new Color(97, 200, 255, 100));
82189 }
82190 }
82191 }
82192 if (type == 143 || type == 144 || type == 145)
82193 {
82194 if (life > 0)
82195 {
82196 for (int num395 = 0; (double)num395 < dmg / (double)lifeMax * 100.0; num395++)
82197 {
82198 int num396 = Dust.NewDust(position, width, height, 76, hitDirection, -1f);
82199 Main.dust[num396].noGravity = true;
82200 }
82201 }
82202 else
82203 {
82204 for (int num397 = 0; num397 < 50; num397++)
82205 {
82206 int num398 = Dust.NewDust(position, width, height, 76, hitDirection, -1f);
82207 Main.dust[num398].noGravity = true;
82208 Dust dust = Main.dust[num398];
82209 dust.scale *= 1.2f;
82210 }
82211 }
82212 }
82213 if (type == 141)
82214 {
82215 if (life > 0)
82216 {
82217 for (int num399 = 0; (double)num399 < dmg / (double)lifeMax * 100.0; num399++)
82218 {
82219 Dust.NewDust(position, width, height, 4, hitDirection, -1f, alpha, new Color(210, 230, 140));
82220 }
82221 }
82222 else
82223 {
82224 for (int num400 = 0; num400 < 50; num400++)
82225 {
82226 Dust.NewDust(position, width, height, 4, 2 * hitDirection, -2f, alpha, new Color(210, 230, 140));
82227 }
82228 }
82229 }
82230 if (type == 112 || type == 666)
82231 {
82232 for (int num401 = 0; num401 < 20; num401++)
82233 {
82234 int num402 = Dust.NewDust(new Vector2(position.X, position.Y + 2f), width, height, 18, 0f, 0f, 100, default(Color), 2f);
82235 if (Main.rand.Next(2) == 0)
82236 {
82237 Dust dust = Main.dust[num402];
82238 dust.scale *= 0.6f;
82239 }
82240 else
82241 {
82242 Dust dust = Main.dust[num402];
82243 dust.velocity *= 1.4f;
82244 Main.dust[num402].noGravity = true;
82245 }
82246 }
82247 }
82248 if (type == 183)
82249 {
82250 if (life > 0)
82251 {
82252 for (int num403 = 0; (double)num403 < dmg / (double)lifeMax * 100.0; num403++)
82253 {
82254 Dust.NewDust(position, width, height, 136, 0f, 0f, alpha, this.color);
82255 }
82256 }
82257 else
82258 {
82259 for (int num404 = 0; num404 < 50; num404++)
82260 {
82261 int num405 = Dust.NewDust(position, width, height, 136, hitDirection, 0f, alpha, this.color);
82262 Dust dust = Main.dust[num405];
82263 dust.velocity *= 2f;
82264 }
82265 }
82266 }
82267 if (type == 81 || type == 121)
82268 {
82269 if (life > 0)
82270 {
82271 for (int num406 = 0; (double)num406 < dmg / (double)lifeMax * 100.0; num406++)
82272 {
82273 Dust.NewDust(position, width, height, 14, 0f, 0f, alpha, this.color);
82274 }
82275 }
82276 else
82277 {
82278 for (int num407 = 0; num407 < 50; num407++)
82279 {
82280 int num408 = Dust.NewDust(position, width, height, 14, hitDirection, 0f, alpha, this.color);
82281 Dust dust = Main.dust[num408];
82282 dust.velocity *= 2f;
82283 }
82284 if (Main.netMode != 1)
82285 {
82286 if (type == 121)
82287 {
82288 int num409 = NewNPC(GetSpawnSource_NPCHurt(), (int)(position.X + (float)(width / 2)), (int)(position.Y + (float)height), 81);
82289 Main.npc[num409].SetDefaults(-2);
82290 Main.npc[num409].velocity.X = velocity.X;
82291 Main.npc[num409].velocity.Y = velocity.Y;
82292 Gore.NewGore(position, velocity, 94, scale);
82293 if (Main.netMode == 2 && num409 < 200)
82294 {
82295 NetMessage.SendData(23, -1, -1, null, num409);
82296 }
82297 }
82298 else if (scale >= 1f)
82299 {
82300 int num410 = Main.rand.Next(2) + 2;
82301 for (int num411 = 0; num411 < num410; num411++)
82302 {
82303 int num412 = NewNPC(GetSpawnSource_NPCHurt(), (int)(position.X + (float)(width / 2)), (int)(position.Y + (float)height), 1);
82304 Main.npc[num412].SetDefaults(-1);
82305 Main.npc[num412].velocity.X = velocity.X * 3f;
82306 Main.npc[num412].velocity.Y = velocity.Y;
82307 Main.npc[num412].velocity.X += (float)Main.rand.Next(-10, 10) * 0.1f + (float)(num411 * direction) * 0.3f;
82308 Main.npc[num412].velocity.Y -= (float)Main.rand.Next(0, 10) * 0.1f + (float)num411;
82309 Main.npc[num412].ai[1] = num411;
82310 if (Main.netMode == 2 && num412 < 200)
82311 {
82312 NetMessage.SendData(23, -1, -1, null, num412);
82313 }
82314 }
82315 }
82316 }
82317 }
82318 }
82319 if (type == 120 || type == 137 || type == 138)
82320 {
82321 if (life > 0)
82322 {
82323 for (int num413 = 0; (double)num413 < dmg / (double)lifeMax * 50.0; num413++)
82324 {
82325 int num414 = Dust.NewDust(position, width, height, 71, 0f, 0f, 200);
82326 Dust dust = Main.dust[num414];
82327 dust.velocity *= 1.5f;
82328 }
82329 }
82330 else
82331 {
82332 for (int num415 = 0; num415 < 50; num415++)
82333 {
82334 int num416 = Dust.NewDust(position, width, height, 71, hitDirection, 0f, 200);
82335 Dust dust = Main.dust[num416];
82336 dust.velocity *= 1.5f;
82337 }
82338 }
82339 }
82340 if (type == 122)
82341 {
82342 if (life > 0)
82343 {
82344 for (int num417 = 0; (double)num417 < dmg / (double)lifeMax * 50.0; num417++)
82345 {
82346 int num418 = Dust.NewDust(position, width, height, 72, 0f, 0f, 200);
82347 Dust dust = Main.dust[num418];
82348 dust.velocity *= 1.5f;
82349 }
82350 }
82351 else
82352 {
82353 for (int num419 = 0; num419 < 50; num419++)
82354 {
82355 int num420 = Dust.NewDust(position, width, height, 72, hitDirection, 0f, 200);
82356 Dust dust = Main.dust[num420];
82357 dust.velocity *= 1.5f;
82358 }
82359 }
82360 }
82361 if (type == 75)
82362 {
82363 if (life > 0)
82364 {
82365 for (int num421 = 0; (double)num421 < dmg / (double)lifeMax * 50.0; num421++)
82366 {
82367 Dust.NewDust(position, width, height, 55, 0f, 0f, 200, this.color);
82368 }
82369 }
82370 else
82371 {
82372 for (int num422 = 0; num422 < 50; num422++)
82373 {
82374 int num423 = Dust.NewDust(position, width, height, 55, hitDirection, 0f, 200, this.color);
82375 Dust dust = Main.dust[num423];
82376 dust.velocity *= 2f;
82377 }
82378 }
82379 }
82380 if (type == 63 || type == 64 || type == 103)
82381 {
82382 Color newColor8 = new Color(50, 120, 255, 100);
82383 if (type == 64)
82384 {
82385 newColor8 = new Color(225, 70, 140, 100);
82386 }
82387 if (type == 103)
82388 {
82389 newColor8 = new Color(70, 225, 140, 100);
82390 }
82391 if (life > 0)
82392 {
82393 for (int num424 = 0; (double)num424 < dmg / (double)lifeMax * 50.0; num424++)
82394 {
82395 Dust.NewDust(position, width, height, 4, hitDirection, -1f, 0, newColor8);
82396 }
82397 }
82398 else
82399 {
82400 for (int num425 = 0; num425 < 25; num425++)
82401 {
82402 Dust.NewDust(position, width, height, 4, 2 * hitDirection, -2f, 0, newColor8);
82403 }
82404 }
82405 }
82406 else
82407 {
82408 if (type == 59 || type == 60 || type == 151)
82409 {
82410 if (life > 0)
82411 {
82412 for (int num426 = 0; (double)num426 < dmg / (double)lifeMax * 80.0; num426++)
82413 {
82414 int num427 = Dust.NewDust(position, width, height, 6, hitDirection * 2, -1f, alpha, default(Color), 1.5f);
82415 if (Main.rand.Next(8) != 0)
82416 {
82417 Main.dust[num427].noGravity = true;
82418 }
82419 }
82420 return;
82421 }
82422 for (int num428 = 0; num428 < 40; num428++)
82423 {
82424 int num429 = Dust.NewDust(position, width, height, 6, hitDirection * 2, -1f, alpha, default(Color), 1.5f);
82425 if (Main.rand.Next(8) != 0)
82426 {
82427 Main.dust[num429].noGravity = true;
82428 }
82429 }
82430 if (Main.expertMode && type == 59 && Main.netMode != 1 && !Main.remixWorld)
82431 {
82432 try
82433 {
82434 int num430 = (int)(base.Center.X / 16f);
82435 int num431 = (int)(base.Center.Y / 16f);
82436 if (!WorldGen.SolidTile(num430, num431) && Main.tile[num430, num431].liquid == 0)
82437 {
82438 Main.tile[num430, num431].liquid = (byte)Main.rand.Next(50, 150);
82439 Main.tile[num430, num431].lava(lava: true);
82440 Main.tile[num430, num431].honey(honey: false);
82441 WorldGen.SquareTileFrame(num430, num431);
82442 }
82443 }
82444 catch
82445 {
82446 }
82447 }
82448 if ((type != 151 && type != 60) || Main.netMode == 1 || !Main.remixWorld || !Main.getGoodWorld)
82449 {
82450 return;
82451 }
82452 try
82453 {
82454 int num432 = (int)(base.Center.X / 16f);
82455 int num433 = (int)(base.Center.Y / 16f);
82456 if (!WorldGen.SolidTile(num432, num433) && Main.tile[num432, num433].liquid == 0)
82457 {
82458 Main.tile[num432, num433].liquid = (byte)Main.rand.Next(50, 150);
82459 Main.tile[num432, num433].lava(lava: true);
82460 Main.tile[num432, num433].honey(honey: false);
82461 WorldGen.SquareTileFrame(num432, num433);
82462 }
82463 return;
82464 }
82465 catch
82466 {
82467 return;
82468 }
82469 }
82470 if (type == 50)
82471 {
82472 if (life > 0)
82473 {
82474 for (int num434 = 0; (double)num434 < dmg / (double)lifeMax * 300.0; num434++)
82475 {
82476 Dust.NewDust(position, width, height, 4, hitDirection, -1f, 175, new Color(0, 80, 255, 100));
82477 }
82478 return;
82479 }
82480 for (int num435 = 0; num435 < 200; num435++)
82481 {
82482 Dust.NewDust(position, width, height, 4, 2 * hitDirection, -2f, 175, new Color(0, 80, 255, 100));
82483 }
82484 Gore.NewGore(base.Center + new Vector2(-40f, -height / 2), velocity, 734);
82485 if (Main.netMode == 1)
82486 {
82487 return;
82488 }
82489 int num436 = Main.rand.Next(4) + 4;
82490 for (int num437 = 0; num437 < num436; num437++)
82491 {
82492 int x = (int)(position.X + (float)Main.rand.Next(width - 32));
82493 int y = (int)(position.Y + (float)Main.rand.Next(height - 32));
82494 int num438 = NewNPC(GetSpawnSource_NPCHurt(), x, y, 1, whoAmI + 1);
82495 Main.npc[num438].SetDefaults(1);
82496 Main.npc[num438].velocity.X = (float)Main.rand.Next(-15, 16) * 0.1f;
82497 Main.npc[num438].velocity.Y = (float)Main.rand.Next(-30, 1) * 0.1f;
82498 Main.npc[num438].ai[0] = -1000 * Main.rand.Next(3);
82499 Main.npc[num438].ai[1] = 0f;
82500 if (Main.netMode == 2 && num438 < 200)
82501 {
82502 NetMessage.SendData(23, -1, -1, null, num438);
82503 }
82504 }
82505 }
82506 else if (type == 153)
82507 {
82508 if (life > 0)
82509 {
82510 for (int num439 = 0; (double)num439 < dmg / (double)lifeMax * 30.0; num439++)
82511 {
82512 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
82513 }
82514 return;
82515 }
82516 for (int num440 = 0; num440 < 15; num440++)
82517 {
82518 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
82519 }
82520 Gore.NewGore(position, velocity, 177);
82521 Gore.NewGore(position, velocity, 178);
82522 Gore.NewGore(position, velocity, 179);
82523 Gore.NewGore(position, velocity, 179);
82524 }
82525 else if (type == 177)
82526 {
82527 if (life > 0)
82528 {
82529 for (int num441 = 0; (double)num441 < dmg / (double)lifeMax * 30.0; num441++)
82530 {
82531 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
82532 }
82533 return;
82534 }
82535 for (int num442 = 0; num442 < 15; num442++)
82536 {
82537 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
82538 }
82539 Gore.NewGore(position, velocity, 234);
82540 Gore.NewGore(position, velocity, 235);
82541 Gore.NewGore(position, velocity, 236);
82542 Gore.NewGore(position, velocity, 236);
82543 }
82544 else if (type >= 494 && type <= 495)
82545 {
82546 if (life > 0)
82547 {
82548 for (int num443 = 0; (double)num443 < dmg / (double)lifeMax * 30.0; num443++)
82549 {
82550 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
82551 }
82552 return;
82553 }
82554 for (int num444 = 0; num444 < 15; num444++)
82555 {
82556 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
82557 }
82558 int num445 = (type - 494) * 2;
82559 Gore.NewGore(position, velocity, 736 + num445);
82560 Gore.NewGore(position, velocity, 735 + num445);
82561 }
82562 else if (type >= 496 && type <= 497)
82563 {
82564 if (life > 0)
82565 {
82566 for (int num446 = 0; (double)num446 < dmg / (double)lifeMax * 30.0; num446++)
82567 {
82568 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
82569 }
82570 return;
82571 }
82572 for (int num447 = 0; num447 < 15; num447++)
82573 {
82574 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
82575 }
82576 int num448 = type - 496;
82577 Gore.NewGore(position, velocity, 739 + num448);
82578 }
82579 else if (type >= 498 && type <= 506)
82580 {
82581 if (life > 0)
82582 {
82583 for (int num449 = 0; (double)num449 < dmg / (double)lifeMax * 30.0; num449++)
82584 {
82585 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
82586 }
82587 return;
82588 }
82589 for (int num450 = 0; num450 < 15; num450++)
82590 {
82591 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
82592 }
82593 int num451 = type - 498;
82594 Gore.NewGore(position, velocity, 750 + num451);
82595 Gore.NewGore(new Vector2(position.X, position.Y + 16f), velocity, 741 + num451);
82596 Gore.NewGore(new Vector2(position.X, position.Y + 18f), velocity, 759 + num451);
82597 }
82598 else if (type == 49 || type == 51 || type == 93 || type == 150 || type == 152 || type == 226)
82599 {
82600 if (life > 0)
82601 {
82602 for (int num452 = 0; (double)num452 < dmg / (double)lifeMax * 30.0; num452++)
82603 {
82604 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
82605 }
82606 return;
82607 }
82608 for (int num453 = 0; num453 < 15; num453++)
82609 {
82610 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
82611 }
82612 if (type == 51)
82613 {
82614 Gore.NewGore(position, velocity, 83);
82615 }
82616 else if (type == 93)
82617 {
82618 Gore.NewGore(position, velocity, 107);
82619 }
82620 else if (type == 150)
82621 {
82622 Gore.NewGore(position, velocity, 164);
82623 Gore.NewGore(position, velocity, 165);
82624 }
82625 else if (type == 152)
82626 {
82627 Gore.NewGore(position, velocity, 175);
82628 Gore.NewGore(position, velocity, 176);
82629 Gore.NewGore(position, velocity, 176);
82630 }
82631 else if (type == 226)
82632 {
82633 Gore.NewGore(position, velocity, 317);
82634 Gore.NewGore(position, velocity, 318);
82635 Gore.NewGore(position, velocity, 318);
82636 Gore.NewGore(position, velocity, 319);
82637 }
82638 else
82639 {
82640 Gore.NewGore(position, velocity, 82);
82641 }
82642 }
82643 else if (type == 611)
82644 {
82645 if (life > 0)
82646 {
82647 for (int num454 = 0; (double)num454 < dmg / (double)lifeMax * 30.0; num454++)
82648 {
82649 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
82650 }
82651 return;
82652 }
82653 for (int num455 = 0; num455 < 15; num455++)
82654 {
82655 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
82656 }
82657 Gore.NewGore(position, velocity, 1164);
82658 Gore.NewGore(position, velocity, 1164);
82659 Gore.NewGore(position, velocity, 1165);
82660 }
82661 else if (type == 624)
82662 {
82663 if (life > 0)
82664 {
82665 for (int num456 = 0; (double)num456 < dmg / (double)lifeMax * 20.0; num456++)
82666 {
82667 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
82668 }
82669 return;
82670 }
82671 for (int num457 = 0; num457 < 10; num457++)
82672 {
82673 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
82674 }
82675 Gore.NewGore(position, velocity, 1190);
82676 Gore.NewGore(position, velocity, 1191);
82677 Gore.NewGore(position, velocity, 1192);
82678 Gore.NewGore(position, velocity, 1193);
82679 }
82680 else if (type == 628)
82681 {
82682 if (life > 0)
82683 {
82684 for (int num458 = 0; (double)num458 < dmg / (double)lifeMax * 20.0; num458++)
82685 {
82686 Dust.NewDust(position, width, height, 3, hitDirection, -1f);
82687 }
82688 return;
82689 }
82690 for (int num459 = 0; num459 < 10; num459++)
82691 {
82692 Dust.NewDust(position, width, height, 3, 2 * hitDirection, -2f);
82693 }
82694 Gore.NewGore(position, velocity, 1205);
82695 Gore.NewGore(position, velocity, 1206);
82696 Gore.NewGore(position, velocity, 1206);
82697 Gore.NewGore(position, velocity, 1207);
82698 }
82699 else if (type >= 646 && type <= 652)
82700 {
82701 int num460 = 138;
82702 if (type < 652)
82703 {
82704 num460 = 86 + (type - 646);
82705 }
82706 if (life > 0)
82707 {
82708 for (int num461 = 0; (double)num461 < dmg / (double)lifeMax * 20.0; num461++)
82709 {
82710 Dust.NewDust(position, width, height, num460, hitDirection, -1f);
82711 }
82712 return;
82713 }
82714 for (int num462 = 0; num462 < 10; num462++)
82715 {
82716 Dust.NewDust(position, width, height, num460, 2 * hitDirection, -2f);
82717 }
82718 int num463 = (type - 646) * 2;
82719 Gore.NewGore(position, velocity, 1234 + num463);
82720 Gore.NewGore(position, velocity, 1235 + num463);
82721 }
82722 else if (type >= 639 && type <= 645)
82723 {
82724 int num464 = 138;
82725 if (type < 645)
82726 {
82727 num464 = 86 + (type - 639);
82728 }
82729 if (life > 0)
82730 {
82731 for (int num465 = 0; (double)num465 < dmg / (double)lifeMax * 20.0; num465++)
82732 {
82733 Dust.NewDust(position, width, height, num464, hitDirection, -1f);
82734 }
82735 return;
82736 }
82737 for (int num466 = 0; num466 < 10; num466++)
82738 {
82739 Dust.NewDust(position, width, height, num464, 2 * hitDirection, -2f);
82740 }
82741 Gore.NewGore(position, velocity, 1227 + (type - 639));
82742 }
82743 else if (type == 46 || type == 55 || type == 67 || type == 74 || type == 102 || type == 224 || type == 230 || type == 297 || type == 298 || type == 299 || type == 300 || type == 303 || type == 337 || type == 538 || type == 540 || type == 587 || type == 610 || type == 614 || type == 616 || type == 617 || type == 625 || type == 626 || type == 627 || type == 615 || type == 671 || type == 672 || type == 673 || type == 674 || type == 675)
82744 {
82745 if (life > 0)
82746 {
82747 for (int num467 = 0; (double)num467 < dmg / (double)lifeMax * 20.0; num467++)
82748 {
82749 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
82750 }
82751 return;
82752 }
82753 for (int num468 = 0; num468 < 10; num468++)
82754 {
82755 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
82756 }
82757 if (type == 46 || type == 303 || type == 337 || type == 540)
82758 {
82759 Gore.NewGore(position, velocity, 76);
82760 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 77);
82761 if (type == 303)
82762 {
82763 for (int num469 = 0; num469 < 10; num469++)
82764 {
82765 Dust.NewDust(position, width, height, 193, 2 * hitDirection, -2f);
82766 }
82767 }
82768 if (type == 540)
82769 {
82770 Gore.NewGore(position, velocity, 926);
82771 }
82772 }
82773 else if (type == 67)
82774 {
82775 Gore.NewGore(position, velocity, 95);
82776 Gore.NewGore(position, velocity, 95);
82777 Gore.NewGore(position, velocity, 96);
82778 }
82779 else if (type == 55 || type == 230)
82780 {
82781 Gore.NewGore(position, velocity, 553);
82782 Gore.NewGore(position, velocity, 554);
82783 }
82784 else if (type == 615)
82785 {
82786 Gore.NewGore(position, velocity, 1198);
82787 Gore.NewGore(position, velocity, 1199);
82788 Gore.NewGore(position, velocity, 1200);
82789 Gore.NewGore(position, velocity, 1200);
82790 }
82791 else if (type == 74)
82792 {
82793 Gore.NewGore(position, velocity, 100);
82794 }
82795 else if (type == 297)
82796 {
82797 Gore.NewGore(position, velocity, 431);
82798 }
82799 else if (type == 298)
82800 {
82801 Gore.NewGore(position, velocity, 432);
82802 }
82803 else if (type == 671)
82804 {
82805 Gore.NewGore(position, velocity, 1277);
82806 Gore.NewGore(base.Center + new Vector2(4f, 0f), velocity, 1279);
82807 Gore.NewGore(base.Center + new Vector2(-4f, 0f), velocity, 1279);
82808 }
82809 else if (type == 672)
82810 {
82811 Gore.NewGore(position, velocity, 1280);
82812 Gore.NewGore(base.Center + new Vector2(4f, 0f), velocity, 1281);
82813 Gore.NewGore(base.Center + new Vector2(-4f, 0f), velocity, 1281);
82814 }
82815 else if (type == 673)
82816 {
82817 Gore.NewGore(position, velocity, 1282);
82818 Gore.NewGore(base.Center + new Vector2(4f, 0f), velocity, 1283);
82819 Gore.NewGore(base.Center + new Vector2(-4f, 0f), velocity, 1283);
82820 }
82821 else if (type == 674)
82822 {
82823 Gore.NewGore(position, velocity, 1284);
82824 Gore.NewGore(base.Center + new Vector2(4f, 0f), velocity, 1285);
82825 Gore.NewGore(base.Center + new Vector2(-4f, 0f), velocity, 1285);
82826 }
82827 else if (type == 675)
82828 {
82829 Gore.NewGore(position, velocity, 1286);
82830 Gore.NewGore(base.Center + new Vector2(4f, 0f), velocity, 1287);
82831 Gore.NewGore(base.Center + new Vector2(-4f, 0f), velocity, 1287);
82832 }
82833 else if (type == 299)
82834 {
82835 Gore.NewGore(position, velocity, 433);
82836 }
82837 else if (type == 538)
82838 {
82839 Gore.NewGore(position, velocity, 897);
82840 }
82841 else if (type == 300)
82842 {
82843 Gore.NewGore(position, velocity, 434);
82844 }
82845 else if (type == 610)
82846 {
82847 Gore.NewGore(position, velocity, 1163);
82848 }
82849 else if (type == 626)
82850 {
82851 Gore.NewGore(position, velocity, 1197);
82852 }
82853 else if (type == 102)
82854 {
82855 Gore.NewGore(position, velocity, 116);
82856 }
82857 else if (type == 224)
82858 {
82859 Gore.NewGore(position, velocity, 312);
82860 Gore.NewGore(position, velocity, 313);
82861 }
82862 else if (type == 587)
82863 {
82864 for (int num470 = 0; num470 < 50; num470++)
82865 {
82866 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
82867 }
82868 Gore.NewGore(position, velocity, 1104);
82869 Gore.NewGore(position, velocity, 1105);
82870 }
82871 else if (type == 616)
82872 {
82873 Gore.NewGore(position, velocity, 1166);
82874 Gore.NewGore(position, velocity, 1167);
82875 Gore.NewGore(position, velocity, 1168);
82876 Gore.NewGore(position, velocity, 1168);
82877 }
82878 else if (type == 617)
82879 {
82880 Gore.NewGore(position, velocity, 1169);
82881 Gore.NewGore(position, velocity, 1170);
82882 Gore.NewGore(position, velocity, 1171);
82883 Gore.NewGore(position, velocity, 1171);
82884 }
82885 else if (type == 625)
82886 {
82887 Gore.NewGore(position, velocity, 1194);
82888 Gore.NewGore(position, velocity, 1195);
82889 Gore.NewGore(position, velocity, 1196);
82890 Gore.NewGore(position, velocity, 1196);
82891 }
82892 }
82893 else if (type == 148 || type == 149 || type == 168 || type == 470)
82894 {
82895 if (life > 0)
82896 {
82897 for (int num471 = 0; (double)num471 < dmg / (double)lifeMax * 20.0; num471++)
82898 {
82899 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
82900 }
82901 return;
82902 }
82903 for (int num472 = 0; num472 < 10; num472++)
82904 {
82905 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
82906 }
82907 if (type == 148)
82908 {
82909 Gore.NewGore(position, velocity, 160);
82910 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 161);
82911 }
82912 else if (type == 149)
82913 {
82914 Gore.NewGore(position, velocity, 162);
82915 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 163);
82916 }
82917 else if (type == 168)
82918 {
82919 Gore.NewGore(position, velocity, 215);
82920 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 216);
82921 }
82922 else if (type == 470)
82923 {
82924 Gore.NewGore(position, velocity, 673);
82925 Gore.NewGore(position, velocity, 672);
82926 Gore.NewGore(position, velocity, 674);
82927 }
82928 }
82929 else if (type == 361)
82930 {
82931 if (life > 0)
82932 {
82933 for (int num473 = 0; (double)num473 < dmg / (double)lifeMax * 20.0; num473++)
82934 {
82935 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
82936 }
82937 return;
82938 }
82939 for (int num474 = 0; num474 < 10; num474++)
82940 {
82941 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
82942 }
82943 Gore.NewGore(position, velocity, 551);
82944 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 552);
82945 }
82946 else if (type == 687)
82947 {
82948 if (life > 0)
82949 {
82950 for (int num475 = 0; (double)num475 < dmg / (double)lifeMax * 20.0; num475++)
82951 {
82952 Dust.NewDust(position, width, height, 16, hitDirection, -1f);
82953 }
82954 }
82955 else
82956 {
82957 Vector2 vector28 = base.Center - new Vector2(20f);
82958 Utils.PoofOfSmoke(vector28);
82959 }
82960 }
82961 else if (type == 685)
82962 {
82963 if (life > 0)
82964 {
82965 for (int num476 = 0; (double)num476 < dmg / (double)lifeMax * 20.0; num476++)
82966 {
82967 Dust.NewDust(position, width, height, 0, hitDirection, -1f);
82968 }
82969 }
82970 else
82971 {
82972 Vector2 vector29 = base.Center - new Vector2(20f);
82973 Utils.PoofOfSmoke(vector29);
82974 }
82975 }
82976 else if (type == 607)
82977 {
82978 if (life > 0)
82979 {
82980 for (int num477 = 0; (double)num477 < dmg / (double)lifeMax * 20.0; num477++)
82981 {
82982 Dust.NewDust(position, width, height, 45, hitDirection, -1f);
82983 }
82984 return;
82985 }
82986 for (int num478 = 0; num478 < 10; num478++)
82987 {
82988 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
82989 }
82990 Gore.NewGore(position, velocity, 1152);
82991 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 1153);
82992 }
82993 else if (type == 366 || type == 367)
82994 {
82995 if (life > 0)
82996 {
82997 for (int num479 = 0; (double)num479 < dmg / (double)lifeMax * 20.0; num479++)
82998 {
82999 Dust.NewDust(position, width, height, 203, hitDirection, -1f);
83000 }
83001 return;
83002 }
83003 for (int num480 = 0; num480 < 10; num480++)
83004 {
83005 Dust.NewDust(position, width, height, 203, 2 * hitDirection, -2f);
83006 }
83007 if (type == 366)
83008 {
83009 Gore.NewGore(position, velocity, 561);
83010 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 562);
83011 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 563);
83012 }
83013 else
83014 {
83015 Gore.NewGore(position, velocity, 564);
83016 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 565);
83017 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 566);
83018 }
83019 }
83020 else if (type >= 362 && type <= 365)
83021 {
83022 if (life > 0)
83023 {
83024 for (int num481 = 0; (double)num481 < dmg / (double)lifeMax * 20.0; num481++)
83025 {
83026 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
83027 }
83028 return;
83029 }
83030 for (int num482 = 0; num482 < 10; num482++)
83031 {
83032 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
83033 }
83034 if (type == 362 || type == 363)
83035 {
83036 Gore.NewGore(position, velocity, 555);
83037 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 556);
83038 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 557);
83039 }
83040 else
83041 {
83042 Gore.NewGore(position, velocity, 558);
83043 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 559);
83044 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 560);
83045 }
83046 }
83047 else if (type == 602 || type == 603)
83048 {
83049 if (life > 0)
83050 {
83051 for (int num483 = 0; (double)num483 < dmg / (double)lifeMax * 20.0; num483++)
83052 {
83053 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
83054 }
83055 return;
83056 }
83057 for (int num484 = 0; num484 < 10; num484++)
83058 {
83059 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
83060 }
83061 if (type == 602 || type == 603)
83062 {
83063 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 1150);
83064 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 1151);
83065 }
83066 }
83067 else if (type == 608 || type == 609)
83068 {
83069 if (life > 0)
83070 {
83071 for (int num485 = 0; (double)num485 < dmg / (double)lifeMax * 20.0; num485++)
83072 {
83073 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
83074 }
83075 return;
83076 }
83077 for (int num486 = 0; num486 < 10; num486++)
83078 {
83079 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
83080 }
83081 if (type == 608 || type == 609)
83082 {
83083 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 1154);
83084 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 1155);
83085 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 1156);
83086 }
83087 }
83088 else if (type == 348 || type == 349)
83089 {
83090 if (life > 0)
83091 {
83092 for (int num487 = 0; (double)num487 < dmg / (double)lifeMax * 20.0; num487++)
83093 {
83094 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
83095 }
83096 return;
83097 }
83098 for (int num488 = 0; num488 < 10; num488++)
83099 {
83100 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
83101 }
83102 Gore.NewGore(position, velocity, 528);
83103 Gore.NewGore(position, velocity, 529);
83104 Gore.NewGore(position, velocity, 530);
83105 Gore.NewGore(position, velocity, 531);
83106 Gore.NewGore(position, velocity, 532);
83107 }
83108 else if (type == 351)
83109 {
83110 if (life > 0)
83111 {
83112 for (int num489 = 0; (double)num489 < dmg / (double)lifeMax * 20.0; num489++)
83113 {
83114 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
83115 }
83116 return;
83117 }
83118 for (int num490 = 0; num490 < 10; num490++)
83119 {
83120 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
83121 }
83122 Gore.NewGore(position, velocity, 538);
83123 Gore.NewGore(position, velocity, 539);
83124 Gore.NewGore(position, velocity, 540);
83125 Gore.NewGore(position, velocity, 541);
83126 Gore.NewGore(position, velocity, 542);
83127 }
83128 else if (type == 350)
83129 {
83130 if (life > 0)
83131 {
83132 for (int num491 = 0; (double)num491 < dmg / (double)lifeMax * 20.0; num491++)
83133 {
83134 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
83135 }
83136 return;
83137 }
83138 for (int num492 = 0; num492 < 10; num492++)
83139 {
83140 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
83141 }
83142 Gore.NewGore(position, velocity, 533);
83143 Gore.NewGore(position, velocity, 534);
83144 Gore.NewGore(position, velocity, 535);
83145 Gore.NewGore(position, velocity, 536);
83146 }
83147 else if (type == 47 || type == 57 || type == 58 || type == 464 || type == 465)
83148 {
83149 if (life > 0)
83150 {
83151 for (int num493 = 0; (double)num493 < dmg / (double)lifeMax * 20.0; num493++)
83152 {
83153 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
83154 }
83155 return;
83156 }
83157 for (int num494 = 0; num494 < 10; num494++)
83158 {
83159 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
83160 }
83161 if (type == 57)
83162 {
83163 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 84);
83164 }
83165 else if (type == 58)
83166 {
83167 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 85);
83168 }
83169 else if (type == 464)
83170 {
83171 Gore.NewGore(position, velocity, 668);
83172 Gore.NewGore(position, velocity, 669);
83173 }
83174 else if (type == 465)
83175 {
83176 Gore.NewGore(position, velocity, 670);
83177 Gore.NewGore(position, velocity, 671);
83178 }
83179 else
83180 {
83181 Gore.NewGore(position, velocity, 78);
83182 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 79);
83183 }
83184 }
83185 else if (type == 173 || type == 174 || type == 181 || type == 182 || type == 268)
83186 {
83187 if (life > 0)
83188 {
83189 for (int num495 = 0; (double)num495 < dmg / (double)lifeMax * 100.0; num495++)
83190 {
83191 Dust.NewDust(position, width, height, 5, hitDirection, -1f, alpha);
83192 }
83193 return;
83194 }
83195 for (int num496 = 0; num496 < 50; num496++)
83196 {
83197 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f, alpha);
83198 }
83199 if (type == 173)
83200 {
83201 Gore.NewGore(position, velocity, 223);
83202 Gore.NewGore(position, velocity, 224);
83203 }
83204 else if (type == 174)
83205 {
83206 Gore.NewGore(position, velocity, 225);
83207 Gore.NewGore(position, velocity, 226);
83208 }
83209 else if (type == 181)
83210 {
83211 Gore.NewGore(position, velocity, 237);
83212 }
83213 else if (type == 182)
83214 {
83215 Gore.NewGore(position, velocity, 238);
83216 Gore.NewGore(position, velocity, 239);
83217 }
83218 else if (type == 268)
83219 {
83220 Gore.NewGore(position, velocity, 403);
83221 Gore.NewGore(position, velocity, 404);
83222 Gore.NewGore(position, velocity, 405);
83223 }
83224 }
83225 else if (type == 2 || type == 190 || type == 191 || type == 192 || type == 193 || type == 194 || type == 317 || type == 318)
83226 {
83227 if (life > 0)
83228 {
83229 for (int num497 = 0; (double)num497 < dmg / (double)lifeMax * 100.0; num497++)
83230 {
83231 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
83232 }
83233 return;
83234 }
83235 for (int num498 = 0; num498 < 50; num498++)
83236 {
83237 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
83238 }
83239 if (type == 190)
83240 {
83241 Gore.NewGore(position, velocity, 249, scale);
83242 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity, 2, scale);
83243 }
83244 else if (type == 191)
83245 {
83246 Gore.NewGore(position, velocity, 248, scale);
83247 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity, 2, scale);
83248 }
83249 else if (type == 192)
83250 {
83251 Gore.NewGore(position, velocity, 247, scale);
83252 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity, 2, scale);
83253 }
83254 else if (type == 193)
83255 {
83256 Gore.NewGore(position, velocity, 252, scale);
83257 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity, 253, scale);
83258 }
83259 else if (type == 194)
83260 {
83261 Gore.NewGore(position, velocity, 250, scale);
83262 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity, 251, scale);
83263 }
83264 else if (type == 317)
83265 {
83266 Gore.NewGore(position, velocity, 447, scale);
83267 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity, 448, scale);
83268 }
83269 else if (type == 318)
83270 {
83271 Gore.NewGore(position, velocity, 449, scale);
83272 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity, 450, scale);
83273 }
83274 else
83275 {
83276 Gore.NewGore(position, velocity, 1, scale);
83277 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity, 2, scale);
83278 }
83279 }
83280 else if (type == 157)
83281 {
83282 if (life > 0)
83283 {
83284 for (int num499 = 0; (double)num499 < dmg / (double)lifeMax * 100.0; num499++)
83285 {
83286 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
83287 }
83288 return;
83289 }
83290 for (int num500 = 0; num500 < 50; num500++)
83291 {
83292 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
83293 }
83294 Gore.NewGore(position, velocity, 186);
83295 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity, 187);
83296 }
83297 else if (type == 133)
83298 {
83299 if (life > 0)
83300 {
83301 for (int num501 = 0; (double)num501 < dmg / (double)lifeMax * 100.0; num501++)
83302 {
83303 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
83304 }
83305 if ((float)life < (float)lifeMax * 0.5f && localAI[0] == 0f)
83306 {
83307 localAI[0] = 1f;
83308 Gore.NewGore(position, velocity, 1);
83309 }
83310 }
83311 else
83312 {
83313 for (int num502 = 0; num502 < 50; num502++)
83314 {
83315 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
83316 }
83317 Gore.NewGore(position, velocity, 155);
83318 Gore.NewGore(new Vector2(position.X, position.Y + 14f), velocity, 155);
83319 }
83320 }
83321 else if (type == 69 || type == 581 || type == 580 || type == 508 || type == 509 || type == 582)
83322 {
83323 float num503 = 100f;
83324 float num504 = 50f;
83325 if (type == 582)
83326 {
83327 num503 = 30f;
83328 num504 = 10f;
83329 }
83330 if (life > 0)
83331 {
83332 for (int num505 = 0; (double)num505 < dmg / (double)lifeMax * (double)num503; num505++)
83333 {
83334 Dust.NewDust(position, width, height, 250, hitDirection, -1f);
83335 }
83336 return;
83337 }
83338 for (int num506 = 0; (float)num506 < num504; num506++)
83339 {
83340 Dust.NewDust(position, width, height, 250, 2 * hitDirection, -2f);
83341 }
83342 if (type == 69)
83343 {
83344 Gore.NewGore(position, velocity, 97);
83345 Gore.NewGore(position, velocity, 98);
83346 }
83347 else if (type == 580)
83348 {
83349 Gore.NewGore(position, velocity, 1094);
83350 Gore.NewGore(position, velocity, 1095);
83351 Gore.NewGore(position, velocity, 1096);
83352 Gore.NewGore(position, velocity, 1097);
83353 }
83354 else if (type == 581)
83355 {
83356 Gore.NewGore(position, velocity, 1098);
83357 Gore.NewGore(position, velocity, 1099);
83358 Gore.NewGore(position, velocity, 1100);
83359 Gore.NewGore(position, velocity, 1101);
83360 Gore.NewGore(position, velocity, 1101);
83361 }
83362 else if (type == 508)
83363 {
83364 Gore.NewGore(position, velocity, 811);
83365 Gore.NewGore(position, velocity, 812);
83366 Gore.NewGore(position, velocity, 813);
83367 Gore.NewGore(position, velocity, 814);
83368 }
83369 else if (type == 509)
83370 {
83371 Gore.NewGore(position, velocity, 815);
83372 Gore.NewGore(position, velocity, 816);
83373 Gore.NewGore(position, velocity, 817);
83374 Gore.NewGore(position, velocity, 818);
83375 Gore.NewGore(position, velocity, 818);
83376 }
83377 else if (type == 582)
83378 {
83379 Gore.NewGore(position, velocity, 1102);
83380 Gore.NewGore(position, velocity, 1103);
83381 }
83382 }
83383 else if (type == 61)
83384 {
83385 if (life > 0)
83386 {
83387 for (int num507 = 0; (double)num507 < dmg / (double)lifeMax * 100.0; num507++)
83388 {
83389 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
83390 }
83391 return;
83392 }
83393 for (int num508 = 0; num508 < 50; num508++)
83394 {
83395 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
83396 }
83397 Gore.NewGore(position, velocity, 86);
83398 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity, 87);
83399 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity, 88);
83400 }
83401 else if (type == 301)
83402 {
83403 if (life > 0)
83404 {
83405 for (int num509 = 0; (double)num509 < dmg / (double)lifeMax * 100.0; num509++)
83406 {
83407 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
83408 }
83409 return;
83410 }
83411 for (int num510 = 0; num510 < 50; num510++)
83412 {
83413 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
83414 }
83415 Gore.NewGore(position, velocity, 438);
83416 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity, 439);
83417 }
83418 else if (type == 252)
83419 {
83420 if (life > 0)
83421 {
83422 for (int num511 = 0; (double)num511 < dmg / (double)lifeMax * 100.0; num511++)
83423 {
83424 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
83425 }
83426 return;
83427 }
83428 for (int num512 = 0; num512 < 50; num512++)
83429 {
83430 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
83431 }
83432 Gore.NewGore(position, velocity, 373);
83433 Gore.NewGore(position, velocity, 374);
83434 }
83435 else if (type == 489 || type == 586)
83436 {
83437 if (life > 0)
83438 {
83439 for (int num513 = 0; (double)num513 < dmg / (double)lifeMax * 100.0; num513++)
83440 {
83441 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
83442 }
83443 return;
83444 }
83445 for (int num514 = 0; num514 < 50; num514++)
83446 {
83447 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
83448 }
83449 if (type == 489)
83450 {
83451 Gore.NewGore(position, velocity, 722, scale);
83452 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 723, scale);
83453 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 723, scale);
83454 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 724, scale);
83455 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 724, scale);
83456 }
83457 if (type == 586)
83458 {
83459 Gore.NewGore(position, velocity, 1106, scale);
83460 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 1107, scale);
83461 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 1107, scale);
83462 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 1108, scale);
83463 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 1108, scale);
83464 }
83465 }
83466 else if (type == 534)
83467 {
83468 if (life > 0)
83469 {
83470 for (int num515 = 0; (double)num515 < dmg / (double)lifeMax * 100.0; num515++)
83471 {
83472 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
83473 }
83474 return;
83475 }
83476 for (int num516 = 0; num516 < 50; num516++)
83477 {
83478 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
83479 }
83480 Gore.NewGore(position, velocity, 894, scale);
83481 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 895, scale);
83482 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 895, scale);
83483 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 896, scale);
83484 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 896, scale);
83485 }
83486 else if (type == 490)
83487 {
83488 if (life > 0)
83489 {
83490 for (int num517 = 0; (double)num517 < dmg / (double)lifeMax * 100.0; num517++)
83491 {
83492 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
83493 }
83494 return;
83495 }
83496 for (int num518 = 0; num518 < 50; num518++)
83497 {
83498 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
83499 }
83500 Gore.NewGore(position, velocity, 725, scale);
83501 Gore.NewGore(position, velocity, 726, scale);
83502 Gore.NewGore(position, velocity, 727, scale);
83503 Gore.NewGore(position, velocity, 725 + Main.rand.Next(3), scale);
83504 Gore.NewGore(position, velocity, 725 + Main.rand.Next(3), scale);
83505 }
83506 else if (type == 65 || (type >= 542 && type <= 545))
83507 {
83508 if (life > 0)
83509 {
83510 for (int num519 = 0; (double)num519 < dmg / (double)lifeMax * 150.0; num519++)
83511 {
83512 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
83513 }
83514 return;
83515 }
83516 for (int num520 = 0; num520 < 75; num520++)
83517 {
83518 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
83519 }
83520 if (type == 65)
83521 {
83522 Gore.NewGore(position, velocity * 0.8f, 89);
83523 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity * 0.8f, 90);
83524 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity * 0.8f, 91);
83525 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity * 0.8f, 92);
83526 }
83527 if (type == 542)
83528 {
83529 Gore.NewGore(position, velocity * 0.8f, 944);
83530 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity * 0.8f, 945);
83531 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity * 0.8f, 946);
83532 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity * 0.8f, 947);
83533 }
83534 if (type == 543)
83535 {
83536 Gore.NewGore(position, velocity * 0.8f, 948);
83537 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity * 0.8f, 949);
83538 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity * 0.8f, 950);
83539 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity * 0.8f, 951);
83540 }
83541 if (type == 544)
83542 {
83543 Gore.NewGore(position, velocity * 0.8f, 952);
83544 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity * 0.8f, 953);
83545 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity * 0.8f, 954);
83546 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity * 0.8f, 955);
83547 }
83548 if (type == 545)
83549 {
83550 Gore.NewGore(position, velocity * 0.8f, 956);
83551 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity * 0.8f, 957);
83552 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity * 0.8f, 958);
83553 Gore.NewGore(new Vector2(position.X + 14f, position.Y), velocity * 0.8f, 959);
83554 }
83555 }
83556 else if (type == 195 || type == 196)
83557 {
83558 if (life > 0)
83559 {
83560 for (int num521 = 0; (double)num521 < dmg / (double)lifeMax * 150.0; num521++)
83561 {
83562 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
83563 }
83564 return;
83565 }
83566 for (int num522 = 0; num522 < 75; num522++)
83567 {
83568 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
83569 }
83570 Gore.NewGore(position, velocity, 254, scale);
83571 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 255, scale);
83572 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 255, scale);
83573 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 256, scale);
83574 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 256, scale);
83575 }
83576 else if (type == 198 || type == 199)
83577 {
83578 if (life > 0)
83579 {
83580 for (int num523 = 0; (double)num523 < dmg / (double)lifeMax * 150.0; num523++)
83581 {
83582 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
83583 }
83584 return;
83585 }
83586 for (int num524 = 0; num524 < 75; num524++)
83587 {
83588 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
83589 }
83590 Gore.NewGore(position, velocity, 258, scale);
83591 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 259, scale);
83592 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 259, scale);
83593 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 260, scale);
83594 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 260, scale);
83595 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 261, scale);
83596 }
83597 else if (type == 206)
83598 {
83599 if (life > 0)
83600 {
83601 for (int num525 = 0; (double)num525 < dmg / (double)lifeMax * 150.0; num525++)
83602 {
83603 Dust.NewDust(position, width, height, 137, hitDirection, -1f);
83604 }
83605 return;
83606 }
83607 for (int num526 = 0; num526 < 75; num526++)
83608 {
83609 Dust.NewDust(position, width, height, 137, 2 * hitDirection, -2f);
83610 }
83611 Gore.NewGore(position, velocity, 273, scale);
83612 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 274, scale);
83613 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 274, scale);
83614 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 275, scale);
83615 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 275, scale);
83616 }
83617 else if (type == 342)
83618 {
83619 if (life > 0)
83620 {
83621 for (int num527 = 0; (double)num527 < dmg / (double)lifeMax * 100.0; num527++)
83622 {
83623 Dust.NewDust(position, width, height, 0, hitDirection, -1f);
83624 }
83625 return;
83626 }
83627 for (int num528 = 0; num528 < 50; num528++)
83628 {
83629 Dust.NewDust(position, width, height, 0, 2.5f * (float)hitDirection, -2.5f);
83630 }
83631 Gore.NewGore(position, velocity, 500, scale);
83632 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 501, scale);
83633 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 501, scale);
83634 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 502, scale);
83635 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 502, scale);
83636 }
83637 else if (type >= 338 && type <= 340)
83638 {
83639 if (life > 0)
83640 {
83641 for (int num529 = 0; (double)num529 < dmg / (double)lifeMax * 100.0; num529++)
83642 {
83643 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
83644 }
83645 return;
83646 }
83647 for (int num530 = 0; num530 < 50; num530++)
83648 {
83649 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
83650 }
83651 if (type == 338)
83652 {
83653 Gore.NewGore(position, velocity, 494, scale);
83654 }
83655 if (type == 339)
83656 {
83657 Gore.NewGore(position, velocity, 495, scale);
83658 }
83659 if (type == 340)
83660 {
83661 Gore.NewGore(position, velocity, 496, scale);
83662 }
83663 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 497, scale);
83664 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 498, scale);
83665 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 499, scale);
83666 }
83667 else if (type == 343)
83668 {
83669 if (life > 0)
83670 {
83671 for (int num531 = 0; (double)num531 < dmg / (double)lifeMax * 100.0; num531++)
83672 {
83673 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
83674 }
83675 return;
83676 }
83677 for (int num532 = 0; num532 < 50; num532++)
83678 {
83679 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
83680 }
83681 Gore.NewGore(position, velocity, 503, scale);
83682 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 504, scale);
83683 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 505, scale);
83684 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 506, scale);
83685 }
83686 else if ((type >= 430 && type <= 436) || type == 590 || type == 591 || type == 3 || type == 52 || type == 53 || type == 536 || type == 104 || type == 109 || type == 331 || type == 332 || type == 132 || type == 161 || type == 162 || type == 186 || type == 187 || type == 188 || type == 189 || type == 200 || type == 223 || type == 251 || type == 319 || type == 320 || type == 321 || type == 632)
83687 {
83688 if (life > 0)
83689 {
83690 for (int num533 = 0; (double)num533 < dmg / (double)lifeMax * 100.0; num533++)
83691 {
83692 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
83693 }
83694 if (type == 186 && Main.rand.Next(5) == 0)
83695 {
83696 Gore.NewGore(position, velocity, 242);
83697 }
83698 if (type == 632 && Main.rand.Next(5) == 0)
83699 {
83700 Gore.NewGore(position, velocity, 1217);
83701 }
83702 if (type == 187)
83703 {
83704 for (int num534 = 0; (double)num534 < dmg / (double)lifeMax * 200.0; num534++)
83705 {
83706 Dust.NewDust(position, width, 24, 4, hitDirection, -1f, 125, new Color(0, 80, 255, 100));
83707 }
83708 }
83709 if ((type == 590 || type == 591) && !wet)
83710 {
83711 for (int num535 = 0; num535 < 3; num535++)
83712 {
83713 Dust.NewDust(position, width, 24, 6, hitDirection, -1f, 125, new Color(0, 80, 255, 100));
83714 }
83715 }
83716 return;
83717 }
83718 for (int num536 = 0; num536 < 50; num536++)
83719 {
83720 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
83721 }
83722 if (type == 187 || type == 433)
83723 {
83724 for (int num537 = 0; num537 < 25; num537++)
83725 {
83726 Dust.NewDust(position, width, 24, 4, hitDirection, -1f, 125, new Color(0, 80, 255, 100));
83727 }
83728 }
83729 if (type == 104)
83730 {
83731 Gore.NewGore(position, velocity, 117, scale);
83732 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 118, scale);
83733 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 118, scale);
83734 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 119, scale);
83735 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 119, scale);
83736 return;
83737 }
83738 if (type == 632)
83739 {
83740 Gore.NewGore(position, velocity, 1214, scale);
83741 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 1215, scale);
83742 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 1215, scale);
83743 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 1216, scale);
83744 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 1216, scale);
83745 if (Main.netMode != 1)
83746 {
83747 int num538 = Main.rand.Next(2) + 2;
83748 for (int num539 = 0; num539 < num538; num539++)
83749 {
83750 Vector2 vector30 = new Vector2((float)Main.rand.Next(-10, 10) * 0.2f, -3.5f - (float)Main.rand.Next(5, 10) * 0.3f - (float)num539 * 0.5f);
83751 int num540 = NewNPC(GetSpawnSource_NPCHurt(), (int)(position.X + (float)(width / 2)), (int)position.Y + Main.rand.Next(height / 2) + 10, 606);
83752 Main.npc[num540].velocity = vector30;
83753 Main.npc[num540].netUpdate = true;
83754 }
83755 }
83756 return;
83757 }
83758 if (type == 331)
83759 {
83760 Gore.NewGore(position, velocity, 488, scale);
83761 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 489, scale);
83762 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 489, scale);
83763 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 490, scale);
83764 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 490, scale);
83765 return;
83766 }
83767 if (type == 332)
83768 {
83769 Gore.NewGore(position, velocity, 491, scale);
83770 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 492, scale);
83771 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 492, scale);
83772 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 493, scale);
83773 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 493, scale);
83774 return;
83775 }
83776 if (type == 109)
83777 {
83778 Gore.NewGore(position, velocity, 121, scale);
83779 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 122, scale);
83780 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 122, scale);
83781 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 123, scale);
83782 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 123, scale);
83783 Gore.NewGore(new Vector2(position.X, position.Y + 46f), velocity, 120, scale);
83784 return;
83785 }
83786 if (type == 161 || type == 431)
83787 {
83788 Gore.NewGore(position, velocity, 191, scale);
83789 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 192, scale);
83790 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 192, scale);
83791 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 193, scale);
83792 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 193, scale);
83793 return;
83794 }
83795 if (type == 162)
83796 {
83797 Gore.NewGore(position, velocity, 194, scale);
83798 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 195, scale);
83799 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 195, scale);
83800 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 196, scale);
83801 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 196, scale);
83802 return;
83803 }
83804 if (type == 188 || type == 434)
83805 {
83806 Gore.NewGore(position, velocity, 243, scale);
83807 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 244, scale);
83808 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 244, scale);
83809 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 245, scale);
83810 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 245, scale);
83811 return;
83812 }
83813 if (type == 200 || type == 436)
83814 {
83815 Gore.NewGore(position, velocity, 262, scale);
83816 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 263, scale);
83817 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 263, scale);
83818 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 264, scale);
83819 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 264, scale);
83820 return;
83821 }
83822 if (type == 319)
83823 {
83824 Gore.NewGore(position, velocity, 451, scale);
83825 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 453, scale);
83826 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 453, scale);
83827 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 452, scale);
83828 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 452, scale);
83829 return;
83830 }
83831 if (type == 320)
83832 {
83833 Gore.NewGore(position, velocity, 454, scale);
83834 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 455, scale);
83835 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 456, scale);
83836 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 456, scale);
83837 return;
83838 }
83839 if (type == 321)
83840 {
83841 Gore.NewGore(position, velocity, 457, scale);
83842 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 458, scale);
83843 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 458, scale);
83844 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 459, scale);
83845 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 459, scale);
83846 return;
83847 }
83848 if (type == 223)
83849 {
83850 Gore.NewGore(position, velocity, 309, scale);
83851 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 310, scale);
83852 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 310, scale);
83853 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 311, scale);
83854 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 311, scale);
83855 return;
83856 }
83857 if (type == 132)
83858 {
83859 Gore.NewGore(position, velocity, 154);
83860 }
83861 else if (type == 186 || type == 432)
83862 {
83863 Gore.NewGore(position, velocity, 241);
83864 }
83865 else if (type == 189 || type == 435)
83866 {
83867 Gore.NewGore(position, velocity, 246);
83868 }
83869 else if (type == 251)
83870 {
83871 Gore.NewGore(position, velocity, 372);
83872 }
83873 else if (type != 187 && type != 433)
83874 {
83875 Gore.NewGore(position, velocity, 3);
83876 }
83877 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 4);
83878 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 4);
83879 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 5);
83880 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 5);
83881 if (type == 186 || type == 432)
83882 {
83883 Gore.NewGore(position, velocity, 242);
83884 }
83885 if ((type == 186 || type == 432) && Main.rand.Next(2) == 0)
83886 {
83887 Gore.NewGore(position, velocity, 242);
83888 }
83889 }
83890 else if (type == 83 || type == 84 || type == 179)
83891 {
83892 if (life > 0)
83893 {
83894 for (int num541 = 0; (double)num541 < dmg / (double)lifeMax * 50.0; num541++)
83895 {
83896 int num542 = Dust.NewDust(position, width, height, 31, 0f, 0f, 0, default(Color), 1.5f);
83897 Main.dust[num542].noGravity = true;
83898 }
83899 return;
83900 }
83901 for (int num543 = 0; num543 < 20; num543++)
83902 {
83903 int num544 = Dust.NewDust(position, width, height, 31, 0f, 0f, 0, default(Color), 1.5f);
83904 Dust dust = Main.dust[num544];
83905 dust.velocity *= 2f;
83906 Main.dust[num544].noGravity = true;
83907 }
83908 int num545 = Gore.NewGore(new Vector2(position.X, position.Y + (float)(height / 2) - 10f), new Vector2(Main.rand.Next(-2, 3), Main.rand.Next(-2, 3)), 61, scale);
83909 Gore gore2 = Main.gore[num545];
83910 gore2.velocity *= 0.5f;
83911 num545 = Gore.NewGore(new Vector2(position.X, position.Y + (float)(height / 2) - 10f), new Vector2(Main.rand.Next(-2, 3), Main.rand.Next(-2, 3)), 61, scale);
83912 gore2 = Main.gore[num545];
83913 gore2.velocity *= 0.5f;
83914 num545 = Gore.NewGore(new Vector2(position.X, position.Y + (float)(height / 2) - 10f), new Vector2(Main.rand.Next(-2, 3), Main.rand.Next(-2, 3)), 61, scale);
83915 gore2 = Main.gore[num545];
83916 gore2.velocity *= 0.5f;
83917 }
83918 else if (type == 262 || type == 263 || type == 264)
83919 {
83920 if (life > 0)
83921 {
83922 for (int num546 = 0; (double)num546 < dmg / (double)lifeMax * 100.0; num546++)
83923 {
83924 if (type == 262 && life > lifeMax / 2 && Main.rand.Next(3) != 0)
83925 {
83926 Dust.NewDust(position, width, height, 166, hitDirection, -1f);
83927 }
83928 else if (type == 265 && Main.rand.Next(3) != 0)
83929 {
83930 Dust.NewDust(position, width, height, 166, hitDirection, -1f);
83931 }
83932 else
83933 {
83934 Dust.NewDust(position, width, height, 167, hitDirection, -1f);
83935 }
83936 }
83937 return;
83938 }
83939 for (int num547 = 0; num547 < 150; num547++)
83940 {
83941 if (type == 265 && Main.rand.Next(3) != 0)
83942 {
83943 Dust.NewDust(position, width, height, 166, 2 * hitDirection, -2f);
83944 }
83945 else
83946 {
83947 Dust.NewDust(position, width, height, 167, 2 * hitDirection, -2f);
83948 }
83949 }
83950 if (type == 262)
83951 {
83952 Gore.NewGore(new Vector2(position.X + (float)Main.rand.Next(width), position.Y + (float)Main.rand.Next(height)), velocity, 381, scale);
83953 Gore.NewGore(new Vector2(position.X + (float)Main.rand.Next(width), position.Y + (float)Main.rand.Next(height)), velocity, 382, scale);
83954 Gore.NewGore(new Vector2(position.X + (float)Main.rand.Next(width), position.Y + (float)Main.rand.Next(height)), velocity, 383, scale);
83955 Gore.NewGore(new Vector2(position.X + (float)Main.rand.Next(width), position.Y + (float)Main.rand.Next(height)), velocity, 384, scale);
83956 Gore.NewGore(new Vector2(position.X + (float)Main.rand.Next(width), position.Y + (float)Main.rand.Next(height)), velocity, 385, scale);
83957 Gore.NewGore(new Vector2(position.X + (float)Main.rand.Next(width), position.Y + (float)Main.rand.Next(height)), velocity, 386, scale);
83958 Gore.NewGore(new Vector2(position.X + (float)Main.rand.Next(width), position.Y + (float)Main.rand.Next(height)), velocity, 386, scale);
83959 Gore.NewGore(new Vector2(position.X + (float)Main.rand.Next(width), position.Y + (float)Main.rand.Next(height)), velocity, 387, scale);
83960 Gore.NewGore(new Vector2(position.X + (float)Main.rand.Next(width), position.Y + (float)Main.rand.Next(height)), velocity, 387, scale);
83961 }
83962 if (type == 263)
83963 {
83964 Gore.NewGore(new Vector2(position.X + (float)Main.rand.Next(width), position.Y + (float)Main.rand.Next(height)), velocity, 390, scale);
83965 Gore.NewGore(new Vector2(position.X + (float)Main.rand.Next(width), position.Y + (float)Main.rand.Next(height)), velocity, 391, scale);
83966 }
83967 if (type == 264)
83968 {
83969 Gore.NewGore(new Vector2(position.X + (float)Main.rand.Next(width), position.Y + (float)Main.rand.Next(height)), velocity, 388, scale);
83970 Gore.NewGore(new Vector2(position.X + (float)Main.rand.Next(width), position.Y + (float)Main.rand.Next(height)), velocity, 389, scale);
83971 }
83972 }
83973 else if (type == 265)
83974 {
83975 if (life >= 0)
83976 {
83977 return;
83978 }
83979 for (int num548 = 0; num548 < 15; num548++)
83980 {
83981 if (Main.rand.Next(3) != 0)
83982 {
83983 Dust.NewDust(position, width, height, 166, hitDirection, -1f);
83984 }
83985 else
83986 {
83987 Dust.NewDust(position, width, height, 167, hitDirection, -1f);
83988 }
83989 }
83990 }
83991 else if (type == 266)
83992 {
83993 if (life > 0)
83994 {
83995 for (int num549 = 0; (double)num549 < dmg / (double)lifeMax * 100.0; num549++)
83996 {
83997 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
83998 }
83999 return;
84000 }
84001 for (int num550 = 0; num550 < 150; num550++)
84002 {
84003 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
84004 }
84005 Gore.NewGore(position, new Vector2((float)Main.rand.Next(-30, 31) * 0.2f, (float)Main.rand.Next(-30, 31) * 0.2f), 396);
84006 Gore.NewGore(position, new Vector2((float)Main.rand.Next(-30, 31) * 0.2f, (float)Main.rand.Next(-30, 31) * 0.2f), 397);
84007 Gore.NewGore(position, new Vector2((float)Main.rand.Next(-30, 31) * 0.2f, (float)Main.rand.Next(-30, 31) * 0.2f), 398);
84008 Gore.NewGore(position, new Vector2((float)Main.rand.Next(-30, 31) * 0.2f, (float)Main.rand.Next(-30, 31) * 0.2f), 399);
84009 Gore.NewGore(position, new Vector2((float)Main.rand.Next(-30, 31) * 0.2f, (float)Main.rand.Next(-30, 31) * 0.2f), 400);
84010 Gore.NewGore(position, new Vector2((float)Main.rand.Next(-30, 31) * 0.2f, (float)Main.rand.Next(-30, 31) * 0.2f), 401);
84011 }
84012 else if (type == 267)
84013 {
84014 if (life > 0)
84015 {
84016 for (int num551 = 0; (double)num551 < dmg / (double)lifeMax * 50.0; num551++)
84017 {
84018 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84019 }
84020 return;
84021 }
84022 for (int num552 = 0; num552 < 20; num552++)
84023 {
84024 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
84025 }
84026 Gore.NewGore(position, velocity, 402);
84027 }
84028 else if (type == 4 || type == 126 || type == 125)
84029 {
84030 if (life > 0)
84031 {
84032 for (int num553 = 0; (double)num553 < dmg / (double)lifeMax * 100.0; num553++)
84033 {
84034 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84035 }
84036 return;
84037 }
84038 for (int num554 = 0; num554 < 150; num554++)
84039 {
84040 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
84041 }
84042 for (int num555 = 0; num555 < 2; num555++)
84043 {
84044 Gore.NewGore(position, new Vector2((float)Main.rand.Next(-30, 31) * 0.2f, (float)Main.rand.Next(-30, 31) * 0.2f), 2);
84045 Gore.NewGore(position, new Vector2((float)Main.rand.Next(-30, 31) * 0.2f, (float)Main.rand.Next(-30, 31) * 0.2f), 7);
84046 Gore.NewGore(position, new Vector2((float)Main.rand.Next(-30, 31) * 0.2f, (float)Main.rand.Next(-30, 31) * 0.2f), 9);
84047 if (type == 4)
84048 {
84049 Gore.NewGore(position, new Vector2((float)Main.rand.Next(-30, 31) * 0.2f, (float)Main.rand.Next(-30, 31) * 0.2f), 10);
84050 SoundEngine.PlaySound(15, (int)position.X, (int)position.Y, 0);
84051 }
84052 else if (type == 125)
84053 {
84054 Gore.NewGore(position, new Vector2((float)Main.rand.Next(-30, 31) * 0.2f, (float)Main.rand.Next(-30, 31) * 0.2f), 146);
84055 }
84056 else if (type == 126)
84057 {
84058 Gore.NewGore(position, new Vector2((float)Main.rand.Next(-30, 31) * 0.2f, (float)Main.rand.Next(-30, 31) * 0.2f), 145);
84059 }
84060 }
84061 if (type == 125 || type == 126)
84062 {
84063 for (int num556 = 0; num556 < 10; num556++)
84064 {
84065 int num557 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 31, 0f, 0f, 100, default(Color), 1.5f);
84066 Dust dust = Main.dust[num557];
84067 dust.velocity *= 1.4f;
84068 }
84069 for (int num558 = 0; num558 < 5; num558++)
84070 {
84071 int num559 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, 0f, 0f, 100, default(Color), 2.5f);
84072 Main.dust[num559].noGravity = true;
84073 Dust dust = Main.dust[num559];
84074 dust.velocity *= 5f;
84075 num559 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, 0f, 0f, 100, default(Color), 1.5f);
84076 dust = Main.dust[num559];
84077 dust.velocity *= 3f;
84078 }
84079 int num560 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
84080 Gore gore2 = Main.gore[num560];
84081 gore2.velocity *= 0.4f;
84082 Main.gore[num560].velocity.X += 1f;
84083 Main.gore[num560].velocity.Y += 1f;
84084 num560 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
84085 gore2 = Main.gore[num560];
84086 gore2.velocity *= 0.4f;
84087 Main.gore[num560].velocity.X -= 1f;
84088 Main.gore[num560].velocity.Y += 1f;
84089 num560 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
84090 gore2 = Main.gore[num560];
84091 gore2.velocity *= 0.4f;
84092 Main.gore[num560].velocity.X += 1f;
84093 Main.gore[num560].velocity.Y -= 1f;
84094 num560 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
84095 gore2 = Main.gore[num560];
84096 gore2.velocity *= 0.4f;
84097 Main.gore[num560].velocity.X -= 1f;
84098 Main.gore[num560].velocity.Y -= 1f;
84099 }
84100 }
84101 else if (type == 5)
84102 {
84103 if (life > 0)
84104 {
84105 for (int num561 = 0; (double)num561 < dmg / (double)lifeMax * 50.0; num561++)
84106 {
84107 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84108 }
84109 return;
84110 }
84111 for (int num562 = 0; num562 < 20; num562++)
84112 {
84113 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
84114 }
84115 Gore.NewGore(position, velocity, 6);
84116 Gore.NewGore(position, velocity, 7);
84117 }
84118 else if (type == 113 || type == 114)
84119 {
84120 if (life > 0)
84121 {
84122 for (int num563 = 0; num563 < 20; num563++)
84123 {
84124 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84125 }
84126 return;
84127 }
84128 for (int num564 = 0; num564 < 50; num564++)
84129 {
84130 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -1f);
84131 }
84132 if (type == 114)
84133 {
84134 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 137, scale);
84135 Gore.NewGore(new Vector2(position.X, position.Y + (float)(height / 2)), velocity, 139, scale);
84136 Gore.NewGore(new Vector2(position.X + (float)(width / 2), position.Y), velocity, 139, scale);
84137 Gore.NewGore(new Vector2(position.X + (float)(width / 2), position.Y + (float)(height / 2)), velocity, 137, scale);
84138 return;
84139 }
84140 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 137, scale);
84141 Gore.NewGore(new Vector2(position.X, position.Y + (float)(height / 2)), velocity, 138, scale);
84142 Gore.NewGore(new Vector2(position.X + (float)(width / 2), position.Y), velocity, 138, scale);
84143 Gore.NewGore(new Vector2(position.X + (float)(width / 2), position.Y + (float)(height / 2)), velocity, 137, scale);
84144 if (!(Main.player[Main.myPlayer].position.Y / 16f > (float)(Main.maxTilesY - 250)))
84145 {
84146 return;
84147 }
84148 int num565 = (int)Main.screenPosition.Y;
84149 int num566 = num565 + Main.screenWidth;
84150 int num567 = (int)position.X;
84151 if (direction > 0)
84152 {
84153 num567 -= 80;
84154 }
84155 int num568 = num567 + 140;
84156 int num569 = num567;
84157 for (int num570 = num565; num570 < num566; num570 += 50)
84158 {
84159 for (; num569 < num568; num569 += 46)
84160 {
84161 for (int num571 = 0; num571 < 5; num571++)
84162 {
84163 Dust.NewDust(new Vector2(num569, num570), 32, 32, 5, (float)Main.rand.Next(-60, 61) * 0.1f, (float)Main.rand.Next(-60, 61) * 0.1f);
84164 }
84165 Gore.NewGore(Velocity: new Vector2((float)Main.rand.Next(-80, 81) * 0.1f, (float)Main.rand.Next(-60, 21) * 0.1f), Position: new Vector2(num569, num570), Type: Main.rand.Next(140, 143));
84166 }
84167 num569 = num567;
84168 }
84169 }
84170 else if (type == 115 || type == 116)
84171 {
84172 if (life > 0)
84173 {
84174 for (int num572 = 0; num572 < 5; num572++)
84175 {
84176 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84177 }
84178 return;
84179 }
84180 if (type == 115 && Main.netMode != 1)
84181 {
84182 NewNPC(GetSpawnSource_NPCHurt(), (int)(position.X + (float)(width / 2)), (int)(position.Y + (float)height), 116);
84183 for (int num573 = 0; num573 < 10; num573++)
84184 {
84185 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84186 }
84187 return;
84188 }
84189 for (int num574 = 0; num574 < 20; num574++)
84190 {
84191 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84192 }
84193 Gore.NewGore(position, velocity, 132, scale);
84194 Gore.NewGore(position, velocity, 133, scale);
84195 }
84196 else if (type >= 117 && type <= 119)
84197 {
84198 if (life > 0)
84199 {
84200 for (int num575 = 0; num575 < 5; num575++)
84201 {
84202 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84203 }
84204 return;
84205 }
84206 for (int num576 = 0; num576 < 10; num576++)
84207 {
84208 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84209 }
84210 Gore.NewGore(position, velocity, 134 + type - 117, scale);
84211 }
84212 else if (type == 217 || type == 218 || type == 219)
84213 {
84214 if (life > 0)
84215 {
84216 for (int num577 = 0; (double)num577 < dmg / (double)lifeMax * 100.0; num577++)
84217 {
84218 Dust.NewDust(position, width, height, 18, hitDirection, -1f, alpha, this.color, scale);
84219 }
84220 return;
84221 }
84222 for (int num578 = 0; num578 < 50; num578++)
84223 {
84224 Dust.NewDust(position, width, height, 18, hitDirection, -2f, alpha, this.color, scale);
84225 }
84226 if (type == 217)
84227 {
84228 int num579 = Gore.NewGore(position, velocity, 292, scale);
84229 num579 = Gore.NewGore(position, velocity, 293, scale);
84230 }
84231 if (type == 218)
84232 {
84233 int num579 = Gore.NewGore(position, velocity, 295, scale);
84234 num579 = Gore.NewGore(position, velocity, 296, scale);
84235 }
84236 if (type == 219)
84237 {
84238 int num579 = Gore.NewGore(position, velocity, 294, scale);
84239 }
84240 }
84241 else if (type == 222)
84242 {
84243 if (life > 0)
84244 {
84245 for (int num580 = 0; (double)num580 < dmg / (double)lifeMax * 100.0; num580++)
84246 {
84247 Dust.NewDust(position, width, height, 18, hitDirection, -1f, alpha, this.color, scale);
84248 }
84249 return;
84250 }
84251 for (int num581 = 0; num581 < 50; num581++)
84252 {
84253 Dust.NewDust(position, width, height, 18, hitDirection, -2f, alpha, this.color, scale);
84254 }
84255 Gore.NewGore(new Vector2(position.X, position.Y - 35f), velocity, 303, scale);
84256 Gore.NewGore(new Vector2(position.X, position.Y - 45f), velocity, 304, scale);
84257 Gore.NewGore(new Vector2(position.X, position.Y), velocity, 305, scale);
84258 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 306, scale);
84259 Gore.NewGore(new Vector2(position.X, position.Y + 10f), velocity, 307, scale);
84260 Gore.NewGore(new Vector2(position.X, position.Y - 10f), velocity, 308, scale);
84261 }
84262 else if (type == 6 || type == 94 || type == 166)
84263 {
84264 if (life > 0)
84265 {
84266 for (int num582 = 0; (double)num582 < dmg / (double)lifeMax * 100.0; num582++)
84267 {
84268 Dust.NewDust(position, width, height, 18, hitDirection, -1f, alpha, this.color, scale);
84269 }
84270 return;
84271 }
84272 for (int num583 = 0; num583 < 50; num583++)
84273 {
84274 Dust.NewDust(position, width, height, 18, hitDirection, -2f, alpha, this.color, scale);
84275 }
84276 if (type == 94)
84277 {
84278 int num584 = Gore.NewGore(position, velocity, 108, scale);
84279 num584 = Gore.NewGore(position, velocity, 108, scale);
84280 num584 = Gore.NewGore(position, velocity, 109, scale);
84281 num584 = Gore.NewGore(position, velocity, 110, scale);
84282 }
84283 else if (type == 166)
84284 {
84285 int num584 = Gore.NewGore(position, velocity, 209, scale);
84286 num584 = Gore.NewGore(position, velocity, 210, scale);
84287 num584 = Gore.NewGore(position, velocity, 211, scale);
84288 }
84289 else
84290 {
84291 int num584 = Gore.NewGore(position, velocity, 14, scale);
84292 Main.gore[num584].alpha = alpha;
84293 num584 = Gore.NewGore(position, velocity, 15, scale);
84294 Main.gore[num584].alpha = alpha;
84295 }
84296 }
84297 else if (type == 101)
84298 {
84299 if (life > 0)
84300 {
84301 for (int num585 = 0; (double)num585 < dmg / (double)lifeMax * 100.0; num585++)
84302 {
84303 Dust.NewDust(position, width, height, 18, hitDirection, -1f, alpha, this.color, scale);
84304 }
84305 return;
84306 }
84307 for (int num586 = 0; num586 < 50; num586++)
84308 {
84309 Dust.NewDust(position, width, height, 18, hitDirection, -2f, alpha, this.color, scale);
84310 }
84311 int num587 = Gore.NewGore(position, velocity, 110, scale);
84312 num587 = Gore.NewGore(position, velocity, 114, scale);
84313 num587 = Gore.NewGore(position, velocity, 114, scale);
84314 num587 = Gore.NewGore(position, velocity, 115, scale);
84315 }
84316 else if (type == 7 || type == 8 || type == 9)
84317 {
84318 if (life > 0)
84319 {
84320 for (int num588 = 0; (double)num588 < dmg / (double)lifeMax * 100.0; num588++)
84321 {
84322 Dust.NewDust(position, width, height, 18, hitDirection, -1f, alpha, this.color, scale);
84323 }
84324 return;
84325 }
84326 for (int num589 = 0; num589 < 50; num589++)
84327 {
84328 Dust.NewDust(position, width, height, 18, hitDirection, -2f, alpha, this.color, scale);
84329 }
84330 int num590 = Gore.NewGore(position, velocity, type - 7 + 18);
84331 Main.gore[num590].alpha = alpha;
84332 }
84333 else if (type == 98 || type == 99 || type == 100)
84334 {
84335 if (life > 0)
84336 {
84337 for (int num591 = 0; (double)num591 < dmg / (double)lifeMax * 100.0; num591++)
84338 {
84339 Dust.NewDust(position, width, height, 18, hitDirection, -1f, alpha, this.color, scale);
84340 }
84341 return;
84342 }
84343 for (int num592 = 0; num592 < 50; num592++)
84344 {
84345 Dust.NewDust(position, width, height, 18, hitDirection, -2f, alpha, this.color, scale);
84346 }
84347 int num593 = Gore.NewGore(position, velocity, 110);
84348 Main.gore[num593].alpha = alpha;
84349 }
84350 else if (type == 10 || type == 11 || type == 12)
84351 {
84352 if (life > 0)
84353 {
84354 for (int num594 = 0; (double)num594 < dmg / (double)lifeMax * 50.0; num594++)
84355 {
84356 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84357 }
84358 return;
84359 }
84360 for (int num595 = 0; num595 < 10; num595++)
84361 {
84362 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
84363 }
84364 Gore.NewGore(position, velocity, type - 7 + 18);
84365 }
84366 else if (type == 95 || type == 96 || type == 97)
84367 {
84368 if (life > 0)
84369 {
84370 for (int num596 = 0; (double)num596 < dmg / (double)lifeMax * 50.0; num596++)
84371 {
84372 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84373 }
84374 return;
84375 }
84376 for (int num597 = 0; num597 < 10; num597++)
84377 {
84378 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
84379 }
84380 Gore.NewGore(position, velocity, type - 95 + 111);
84381 }
84382 else if (type == 13 || type == 14 || type == 15)
84383 {
84384 if (life > 0)
84385 {
84386 for (int num598 = 0; (double)num598 < dmg / (double)lifeMax * 100.0; num598++)
84387 {
84388 Dust.NewDust(position, width, height, 18, hitDirection, -1f, alpha, this.color, scale);
84389 }
84390 return;
84391 }
84392 for (int num599 = 0; num599 < 50; num599++)
84393 {
84394 Dust.NewDust(position, width, height, 18, hitDirection, -2f, alpha, this.color, scale);
84395 }
84396 if (type == 13)
84397 {
84398 Gore.NewGore(position, velocity, 24);
84399 Gore.NewGore(position, velocity, 25);
84400 }
84401 else if (type == 14)
84402 {
84403 Gore.NewGore(position, velocity, 26);
84404 Gore.NewGore(position, velocity, 27);
84405 }
84406 else
84407 {
84408 Gore.NewGore(position, velocity, 28);
84409 Gore.NewGore(position, velocity, 29);
84410 }
84411 }
84412 else if (type == 17)
84413 {
84414 if (life > 0)
84415 {
84416 for (int num600 = 0; (double)num600 < dmg / (double)lifeMax * 100.0; num600++)
84417 {
84418 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84419 }
84420 return;
84421 }
84422 for (int num601 = 0; num601 < 50; num601++)
84423 {
84424 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
84425 }
84426 if (altTexture == 0)
84427 {
84428 Gore.NewGore(position, velocity, IsShimmerVariant ? 1320 : 30);
84429 }
84430 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1322 : 31);
84431 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1322 : 31);
84432 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1323 : 32);
84433 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1323 : 32);
84434 }
84435 else if (type == 441)
84436 {
84437 if (life > 0)
84438 {
84439 for (int num602 = 0; (double)num602 < dmg / (double)lifeMax * 100.0; num602++)
84440 {
84441 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84442 }
84443 return;
84444 }
84445 for (int num603 = 0; num603 < 50; num603++)
84446 {
84447 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
84448 }
84449 Gore.NewGore(position, velocity, IsShimmerVariant ? 1358 : 768);
84450 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1359 : 769);
84451 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1361 : 770);
84452 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1360 : 771);
84453 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1360 : 771);
84454 }
84455 else if (type == 86)
84456 {
84457 if (life > 0)
84458 {
84459 for (int num604 = 0; (double)num604 < dmg / (double)lifeMax * 100.0; num604++)
84460 {
84461 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84462 }
84463 return;
84464 }
84465 for (int num605 = 0; num605 < 50; num605++)
84466 {
84467 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
84468 }
84469 Gore.NewGore(position, velocity, 101);
84470 Gore.NewGore(position, velocity, 102);
84471 Gore.NewGore(position, velocity, 103);
84472 Gore.NewGore(position, velocity, 103);
84473 Gore.NewGore(position, velocity, 104);
84474 Gore.NewGore(position, velocity, 104);
84475 Gore.NewGore(position, velocity, 105);
84476 }
84477 else if (type == 155)
84478 {
84479 if (life > 0)
84480 {
84481 for (int num606 = 0; (double)num606 < dmg / (double)lifeMax * 100.0; num606++)
84482 {
84483 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84484 }
84485 return;
84486 }
84487 for (int num607 = 0; num607 < 50; num607++)
84488 {
84489 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
84490 }
84491 Gore.NewGore(position, velocity, 181);
84492 Gore.NewGore(position, velocity, 182);
84493 Gore.NewGore(position, velocity, 183);
84494 }
84495 else if (type == 329)
84496 {
84497 if (life > 0)
84498 {
84499 for (int num608 = 0; (double)num608 < dmg / (double)lifeMax * 100.0; num608++)
84500 {
84501 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84502 }
84503 return;
84504 }
84505 for (int num609 = 0; num609 < 50; num609++)
84506 {
84507 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
84508 }
84509 Gore.NewGore(position, velocity, 485);
84510 Gore.NewGore(position, velocity, 486);
84511 Gore.NewGore(position, velocity, 487);
84512 }
84513 else if (type == 163 || type == 238)
84514 {
84515 if (life > 0)
84516 {
84517 for (int num610 = 0; (double)num610 < dmg / (double)lifeMax * 100.0; num610++)
84518 {
84519 Dust.NewDust(position, width, height, 18, hitDirection, -1f);
84520 }
84521 return;
84522 }
84523 for (int num611 = 0; num611 < 50; num611++)
84524 {
84525 Dust.NewDust(position, width, height, 18, 2.5f * (float)hitDirection, -2.5f);
84526 }
84527 Gore.NewGore(position, velocity, 205);
84528 Gore.NewGore(position, velocity, 206);
84529 Gore.NewGore(position, velocity, 206);
84530 Gore.NewGore(position, velocity, 206);
84531 Gore.NewGore(position, velocity, 206);
84532 }
84533 else if (type == 164 || type == 165)
84534 {
84535 if (life > 0)
84536 {
84537 for (int num612 = 0; (double)num612 < dmg / (double)lifeMax * 100.0; num612++)
84538 {
84539 Dust.NewDust(position, width, height, 18, hitDirection, -1f);
84540 }
84541 return;
84542 }
84543 for (int num613 = 0; num613 < 50; num613++)
84544 {
84545 Dust.NewDust(position, width, height, 18, 2.5f * (float)hitDirection, -2.5f);
84546 }
84547 Gore.NewGore(position, velocity, 207);
84548 Gore.NewGore(position, velocity, 208);
84549 Gore.NewGore(position, velocity, 208);
84550 Gore.NewGore(position, velocity, 208);
84551 Gore.NewGore(position, velocity, 208);
84552 }
84553 else if (type == 239 || type == 240)
84554 {
84555 if (life > 0)
84556 {
84557 for (int num614 = 0; (double)num614 < dmg / (double)lifeMax * 100.0; num614++)
84558 {
84559 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84560 }
84561 return;
84562 }
84563 for (int num615 = 0; num615 < 50; num615++)
84564 {
84565 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
84566 }
84567 Gore.NewGore(position, velocity, 351);
84568 Gore.NewGore(position, velocity, 352);
84569 Gore.NewGore(position, velocity, 352);
84570 Gore.NewGore(position, velocity, 353);
84571 Gore.NewGore(position, velocity, 353);
84572 }
84573 else if (type == 236 || type == 237)
84574 {
84575 if (life > 0)
84576 {
84577 for (int num616 = 0; (double)num616 < dmg / (double)lifeMax * 100.0; num616++)
84578 {
84579 Dust.NewDust(position, width, height, 18, hitDirection, -1f);
84580 }
84581 return;
84582 }
84583 for (int num617 = 0; num617 < 50; num617++)
84584 {
84585 Dust.NewDust(position, width, height, 18, 2.5f * (float)hitDirection, -2.5f);
84586 }
84587 Gore.NewGore(position, velocity, 332);
84588 Gore.NewGore(position, velocity, 333);
84589 Gore.NewGore(position, velocity, 334);
84590 Gore.NewGore(position, velocity, 335);
84591 Gore.NewGore(position, velocity, 335);
84592 }
84593 else if (type == 241)
84594 {
84595 if (life > 0)
84596 {
84597 for (int num618 = 0; (double)num618 < dmg / (double)lifeMax * 100.0; num618++)
84598 {
84599 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84600 }
84601 return;
84602 }
84603 for (int num619 = 0; num619 < 50; num619++)
84604 {
84605 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
84606 }
84607 Gore.NewGore(position, velocity, 354);
84608 Gore.NewGore(position, velocity, 355);
84609 }
84610 else if (type == 242)
84611 {
84612 if (life > 0)
84613 {
84614 for (int num620 = 0; (double)num620 < dmg / (double)lifeMax * 100.0; num620++)
84615 {
84616 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84617 }
84618 return;
84619 }
84620 for (int num621 = 0; num621 < 50; num621++)
84621 {
84622 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
84623 }
84624 Gore.NewGore(position, velocity, 356);
84625 Gore.NewGore(position, velocity, 357);
84626 Gore.NewGore(position, velocity, 357);
84627 Gore.NewGore(position, velocity, 358);
84628 Gore.NewGore(position, velocity, 358);
84629 }
84630 else if (type >= 105 && type <= 108)
84631 {
84632 if (life > 0)
84633 {
84634 for (int num622 = 0; (double)num622 < dmg / (double)lifeMax * 100.0; num622++)
84635 {
84636 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84637 }
84638 return;
84639 }
84640 for (int num623 = 0; num623 < 50; num623++)
84641 {
84642 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
84643 }
84644 if (type == 105 || type == 107)
84645 {
84646 Gore.NewGore(position, velocity, IsShimmerVariant ? 1308 : 124);
84647 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1309 : 125);
84648 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1309 : 125);
84649 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1310 : 126);
84650 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1310 : 126);
84651 return;
84652 }
84653 if (altTexture == 0 || type == 106)
84654 {
84655 Gore.NewGore(position, velocity, IsShimmerVariant ? 1373 : 127);
84656 }
84657 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1374 : 128);
84658 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1375 : 128);
84659 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1376 : 129);
84660 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1376 : 129);
84661 }
84662 else if (type == 123 || type == 124)
84663 {
84664 if (life > 0)
84665 {
84666 for (int num624 = 0; (double)num624 < dmg / (double)lifeMax * 100.0; num624++)
84667 {
84668 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84669 }
84670 return;
84671 }
84672 for (int num625 = 0; num625 < 50; num625++)
84673 {
84674 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
84675 }
84676 Gore.NewGore(position, velocity, IsShimmerVariant ? 1317 : 151);
84677 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1318 : 152);
84678 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1318 : 152);
84679 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1319 : 153);
84680 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1319 : 153);
84681 }
84682 else if (type == 22)
84683 {
84684 if (life > 0)
84685 {
84686 for (int num626 = 0; (double)num626 < dmg / (double)lifeMax * 100.0; num626++)
84687 {
84688 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84689 }
84690 return;
84691 }
84692 for (int num627 = 0; num627 < 50; num627++)
84693 {
84694 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
84695 }
84696 Gore.NewGore(position, velocity, IsShimmerVariant ? 1314 : 73);
84697 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1315 : 74);
84698 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1315 : 74);
84699 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1316 : 75);
84700 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1316 : 75);
84701 }
84702 else if (type == 550)
84703 {
84704 if (life > 0)
84705 {
84706 for (int num628 = 0; (double)num628 < dmg / (double)lifeMax * 100.0; num628++)
84707 {
84708 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84709 }
84710 return;
84711 }
84712 for (int num629 = 0; num629 < 50; num629++)
84713 {
84714 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
84715 }
84716 Gore.NewGore(new Vector2(position.X, position.Y + 0f), velocity, IsShimmerVariant ? 1355 : 967);
84717 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1356 : 968);
84718 Gore.NewGore(new Vector2(position.X + 8f, position.Y + 20f), velocity, IsShimmerVariant ? 1356 : 968);
84719 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1357 : 969);
84720 Gore.NewGore(new Vector2(position.X + 8f, position.Y + 34f), velocity, IsShimmerVariant ? 1357 : 969);
84721 }
84722 else if (type == 588 || type == 589)
84723 {
84724 if (life > 0)
84725 {
84726 for (int num630 = 0; (double)num630 < dmg / (double)lifeMax * 100.0; num630++)
84727 {
84728 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84729 }
84730 return;
84731 }
84732 for (int num631 = 0; num631 < 50; num631++)
84733 {
84734 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
84735 }
84736 if (altTexture == 0)
84737 {
84738 Gore.NewGore(new Vector2(position.X, position.Y + 0f), velocity, IsShimmerVariant ? 1311 : 1109);
84739 }
84740 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1312 : 1110);
84741 Gore.NewGore(new Vector2(position.X + 8f, position.Y + 20f), velocity, IsShimmerVariant ? 1312 : 1110);
84742 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1313 : 1111);
84743 Gore.NewGore(new Vector2(position.X + 8f, position.Y + 34f), velocity, IsShimmerVariant ? 1313 : 1111);
84744 }
84745 else if (type == 633)
84746 {
84747 if (life > 0)
84748 {
84749 for (int num632 = 0; (double)num632 < dmg / (double)lifeMax * 100.0; num632++)
84750 {
84751 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84752 }
84753 return;
84754 }
84755 for (int num633 = 0; num633 < 50; num633++)
84756 {
84757 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
84758 }
84759 int num634 = 1219;
84760 int num635 = 1220;
84761 if (altTexture == 2)
84762 {
84763 num634 = 1223;
84764 num635 = 1224;
84765 }
84766 if (IsShimmerVariant)
84767 {
84768 num634 = 1377;
84769 num635 = 1379;
84770 if (altTexture == 2)
84771 {
84772 num634 = 1378;
84773 num635 = 1380;
84774 }
84775 }
84776 Gore.NewGore(new Vector2(position.X, position.Y + 0f), velocity, num634);
84777 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, num635);
84778 Gore.NewGore(new Vector2(position.X + 8f, position.Y + 20f), velocity, num635);
84779 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1382 : 1221);
84780 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1381 : 1222);
84781 Gore.NewGore(new Vector2(position.X + 8f, position.Y + 34f), velocity, IsShimmerVariant ? 1381 : 1222);
84782 }
84783 else if (type == 368)
84784 {
84785 if (life > 0)
84786 {
84787 for (int num636 = 0; (double)num636 < dmg / (double)lifeMax * 100.0; num636++)
84788 {
84789 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84790 }
84791 return;
84792 }
84793 for (int num637 = 0; num637 < 50; num637++)
84794 {
84795 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
84796 }
84797 if (altTexture == 0)
84798 {
84799 Gore.NewGore(position, velocity, IsShimmerVariant ? 1362 : 567);
84800 }
84801 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1364 : 568);
84802 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1364 : 568);
84803 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1365 : 569);
84804 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1365 : 569);
84805 }
84806 else if (type == 369 || type == 376 || type == 663 || NPCID.Sets.IsTownPet[type])
84807 {
84808 if (life <= 0)
84809 {
84810 for (int num638 = 0; num638 < 25; num638++)
84811 {
84812 int num639 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 31, 0f, 0f, 100, default(Color), 2f);
84813 Dust dust = Main.dust[num639];
84814 dust.velocity *= 1.4f;
84815 Main.dust[num639].noLight = true;
84816 Main.dust[num639].noGravity = true;
84817 }
84818 int num640 = 0;
84819 num640 = Gore.NewGore(new Vector2(position.X + (float)(width / 2) - 24f, position.Y + (float)(height / 2) - 24f), default(Vector2), Main.rand.Next(61, 64));
84820 Main.gore[num640].scale = 1f;
84821 Main.gore[num640].velocity.X += 1f;
84822 Main.gore[num640].velocity.Y += 1f;
84823 num640 = Gore.NewGore(new Vector2(position.X + (float)(width / 2) - 24f, position.Y + (float)(height / 2) - 24f), default(Vector2), Main.rand.Next(61, 64));
84824 Main.gore[num640].scale = 1f;
84825 Main.gore[num640].velocity.X -= 1f;
84826 Main.gore[num640].velocity.Y += 1f;
84827 num640 = Gore.NewGore(new Vector2(position.X + (float)(width / 2) - 24f, position.Y + (float)(height / 2) - 24f), default(Vector2), Main.rand.Next(61, 64));
84828 Main.gore[num640].scale = 1f;
84829 Main.gore[num640].velocity.X += 1f;
84830 Main.gore[num640].velocity.Y -= 1f;
84831 num640 = Gore.NewGore(new Vector2(position.X + (float)(width / 2) - 24f, position.Y + (float)(height / 2) - 24f), default(Vector2), Main.rand.Next(61, 64));
84832 Main.gore[num640].scale = 1f;
84833 Main.gore[num640].velocity.X -= 1f;
84834 Main.gore[num640].velocity.Y -= 1f;
84835 }
84836 }
84837 else if (type == 227)
84838 {
84839 if (life > 0)
84840 {
84841 for (int num641 = 0; (double)num641 < dmg / (double)lifeMax * 100.0; num641++)
84842 {
84843 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84844 }
84845 return;
84846 }
84847 for (int num642 = 0; num642 < 50; num642++)
84848 {
84849 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
84850 }
84851 if (altTexture == 0)
84852 {
84853 Gore.NewGore(position, velocity, IsShimmerVariant ? 1331 : 320);
84854 }
84855 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1334 : 321);
84856 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1333 : 322);
84857 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1332 : 323);
84858 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1332 : 323);
84859 }
84860 else if (type == 228)
84861 {
84862 if (life > 0)
84863 {
84864 for (int num643 = 0; (double)num643 < dmg / (double)lifeMax * 100.0; num643++)
84865 {
84866 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84867 }
84868 return;
84869 }
84870 for (int num644 = 0; num644 < 50; num644++)
84871 {
84872 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
84873 }
84874 Gore.NewGore(position, velocity, IsShimmerVariant ? 1369 : 324);
84875 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1370 : 325);
84876 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1372 : 326);
84877 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1371 : 327);
84878 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1371 : 327);
84879 }
84880 else if (type == 229)
84881 {
84882 if (life > 0)
84883 {
84884 for (int num645 = 0; (double)num645 < dmg / (double)lifeMax * 100.0; num645++)
84885 {
84886 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84887 }
84888 return;
84889 }
84890 if (IsShimmerVariant)
84891 {
84892 for (int num646 = 0; num646 < 50; num646++)
84893 {
84894 int num647 = Dust.NewDust(position, width, height, 180, velocity.X, velocity.Y);
84895 Dust dust = Main.dust[num647];
84896 dust.velocity *= 2f;
84897 Main.dust[num647].noGravity = true;
84898 Main.dust[num647].scale = 1.4f;
84899 }
84900 return;
84901 }
84902 for (int num648 = 0; num648 < 50; num648++)
84903 {
84904 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
84905 }
84906 if (altTexture == 0)
84907 {
84908 Gore.NewGore(position, velocity, 328);
84909 }
84910 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 329);
84911 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 329);
84912 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 330);
84913 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 330);
84914 }
84915 else if (type == 142)
84916 {
84917 if (life > 0)
84918 {
84919 for (int num649 = 0; (double)num649 < dmg / (double)lifeMax * 100.0; num649++)
84920 {
84921 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84922 }
84923 return;
84924 }
84925 for (int num650 = 0; num650 < 50; num650++)
84926 {
84927 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
84928 }
84929 if (altTexture == 0)
84930 {
84931 Gore.NewGore(position, velocity, IsShimmerVariant ? 1338 : 157);
84932 }
84933 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1340 : 158);
84934 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1340 : 158);
84935 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1341 : 159);
84936 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1341 : 159);
84937 }
84938 else if (type == 178)
84939 {
84940 if (life > 0)
84941 {
84942 for (int num651 = 0; (double)num651 < dmg / (double)lifeMax * 100.0; num651++)
84943 {
84944 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84945 }
84946 return;
84947 }
84948 for (int num652 = 0; num652 < 50; num652++)
84949 {
84950 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
84951 }
84952 if (altTexture == 0)
84953 {
84954 Gore.NewGore(position, velocity, IsShimmerVariant ? 1348 : 231);
84955 }
84956 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1349 : 232);
84957 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1349 : 232);
84958 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1350 : 233);
84959 }
84960 else if (type == 353 || type == 354)
84961 {
84962 if (life > 0)
84963 {
84964 for (int num653 = 0; (double)num653 < dmg / (double)lifeMax * 100.0; num653++)
84965 {
84966 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84967 }
84968 return;
84969 }
84970 for (int num654 = 0; num654 < 50; num654++)
84971 {
84972 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
84973 }
84974 if (altTexture == 0)
84975 {
84976 Gore.NewGore(position, velocity, IsShimmerVariant ? 1353 : 544);
84977 }
84978 if (!IsShimmerVariant)
84979 {
84980 Gore.NewGore(position, velocity, 543);
84981 }
84982 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1353 : 546);
84983 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1353 : 546);
84984 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1354 : 545);
84985 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1354 : 545);
84986 }
84987 else if (type == 37)
84988 {
84989 if (life > 0)
84990 {
84991 for (int num655 = 0; (double)num655 < dmg / (double)lifeMax * 100.0; num655++)
84992 {
84993 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
84994 }
84995 return;
84996 }
84997 for (int num656 = 0; num656 < 50; num656++)
84998 {
84999 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
85000 }
85001 Gore.NewGore(position, velocity, IsShimmerVariant ? 1328 : 58);
85002 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1329 : 59);
85003 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1329 : 59);
85004 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1330 : 60);
85005 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1330 : 60);
85006 }
85007 else if (type == 54)
85008 {
85009 if (life > 0)
85010 {
85011 for (int num657 = 0; (double)num657 < dmg / (double)lifeMax * 100.0; num657++)
85012 {
85013 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
85014 }
85015 return;
85016 }
85017 for (int num658 = 0; num658 < 50; num658++)
85018 {
85019 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
85020 }
85021 Gore.NewGore(position, velocity, IsShimmerVariant ? 1291 : 58);
85022 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1292 : 59);
85023 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1292 : 59);
85024 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1293 : 60);
85025 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1293 : 60);
85026 }
85027 else if (type == 160)
85028 {
85029 if (life > 0)
85030 {
85031 for (int num659 = 0; (double)num659 < dmg / (double)lifeMax * 100.0; num659++)
85032 {
85033 Dust.NewDust(position, width, height, 26, hitDirection, -1f);
85034 }
85035 return;
85036 }
85037 for (int num660 = 0; num660 < 50; num660++)
85038 {
85039 Dust.NewDust(position, width, height, 26, 2.5f * (float)hitDirection, -2.5f);
85040 }
85041 Gore.NewGore(position, velocity, IsShimmerVariant ? 1366 : 188);
85042 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1367 : 189);
85043 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1367 : 189);
85044 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1368 : 190);
85045 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1368 : 190);
85046 }
85047 else if (type == 18)
85048 {
85049 if (life > 0)
85050 {
85051 for (int num661 = 0; (double)num661 < dmg / (double)lifeMax * 100.0; num661++)
85052 {
85053 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
85054 }
85055 return;
85056 }
85057 for (int num662 = 0; num662 < 50; num662++)
85058 {
85059 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
85060 }
85061 if (altTexture == 0)
85062 {
85063 Gore.NewGore(position, velocity, IsShimmerVariant ? 1324 : 33);
85064 }
85065 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1326 : 34);
85066 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1326 : 34);
85067 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1327 : 35);
85068 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1327 : 35);
85069 }
85070 else if (type == 19)
85071 {
85072 if (life > 0)
85073 {
85074 for (int num663 = 0; (double)num663 < dmg / (double)lifeMax * 100.0; num663++)
85075 {
85076 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
85077 }
85078 return;
85079 }
85080 for (int num664 = 0; num664 < 50; num664++)
85081 {
85082 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
85083 }
85084 Gore.NewGore(position, velocity, IsShimmerVariant ? 1288 : 36);
85085 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1289 : 37);
85086 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1289 : 37);
85087 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1290 : 38);
85088 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1290 : 38);
85089 }
85090 else if (type == 38)
85091 {
85092 if (life > 0)
85093 {
85094 for (int num665 = 0; (double)num665 < dmg / (double)lifeMax * 100.0; num665++)
85095 {
85096 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
85097 }
85098 return;
85099 }
85100 for (int num666 = 0; num666 < 50; num666++)
85101 {
85102 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
85103 }
85104 if (altTexture == 0)
85105 {
85106 Gore.NewGore(position, velocity, IsShimmerVariant ? 1297 : 64);
85107 }
85108 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1299 : 65);
85109 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1299 : 65);
85110 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1300 : 66);
85111 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1300 : 66);
85112 }
85113 else if (type == 20)
85114 {
85115 if (life > 0)
85116 {
85117 for (int num667 = 0; (double)num667 < dmg / (double)lifeMax * 100.0; num667++)
85118 {
85119 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
85120 }
85121 return;
85122 }
85123 for (int num668 = 0; num668 < 50; num668++)
85124 {
85125 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
85126 }
85127 Gore.NewGore(position, velocity, IsShimmerVariant ? 1301 : 39);
85128 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1302 : 40);
85129 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1302 : 40);
85130 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1303 : 41);
85131 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1303 : 41);
85132 }
85133 else if (type == 207)
85134 {
85135 if (life > 0)
85136 {
85137 for (int num669 = 0; (double)num669 < dmg / (double)lifeMax * 100.0; num669++)
85138 {
85139 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
85140 }
85141 return;
85142 }
85143 for (int num670 = 0; num670 < 50; num670++)
85144 {
85145 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
85146 }
85147 if (altTexture == 0)
85148 {
85149 Gore.NewGore(position, velocity, IsShimmerVariant ? 1304 : 283);
85150 }
85151 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1306 : 284);
85152 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1306 : 284);
85153 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1307 : 285);
85154 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1307 : 285);
85155 }
85156 else if (type == 208)
85157 {
85158 if (life > 0)
85159 {
85160 for (int num671 = 0; (double)num671 < dmg / (double)lifeMax * 100.0; num671++)
85161 {
85162 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
85163 }
85164 return;
85165 }
85166 for (int num672 = 0; num672 < 50; num672++)
85167 {
85168 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
85169 }
85170 Gore.NewGore(position, velocity, IsShimmerVariant ? 1335 : 286);
85171 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1336 : 287);
85172 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1336 : 287);
85173 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1337 : 288);
85174 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1337 : 288);
85175 }
85176 else if (type == 663)
85177 {
85178 if (life > 0)
85179 {
85180 for (int num673 = 0; (double)num673 < dmg / (double)lifeMax * 100.0; num673++)
85181 {
85182 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
85183 }
85184 }
85185 else
85186 {
85187 for (int num674 = 0; num674 < 50; num674++)
85188 {
85189 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
85190 }
85191 }
85192 }
85193 else if (type == 209)
85194 {
85195 if (life > 0)
85196 {
85197 for (int num675 = 0; (double)num675 < dmg / (double)lifeMax * 100.0; num675++)
85198 {
85199 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
85200 }
85201 return;
85202 }
85203 for (int num676 = 0; num676 < 50; num676++)
85204 {
85205 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
85206 }
85207 Gore.NewGore(position, velocity, IsShimmerVariant ? 1294 : 289);
85208 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1295 : 290);
85209 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1295 : 290);
85210 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1296 : 291);
85211 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1296 : 291);
85212 }
85213 else if (type >= 212 && type <= 216)
85214 {
85215 if (life > 0)
85216 {
85217 for (int num677 = 0; (double)num677 < dmg / (double)lifeMax * 100.0; num677++)
85218 {
85219 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
85220 }
85221 return;
85222 }
85223 for (int num678 = 0; num678 < 50; num678++)
85224 {
85225 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
85226 }
85227 if (type == 212)
85228 {
85229 Gore.NewGore(position, velocity, 336);
85230 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 337);
85231 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 337);
85232 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 338);
85233 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 338);
85234 }
85235 else if (type == 213)
85236 {
85237 Gore.NewGore(position, velocity, 339);
85238 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 340);
85239 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 340);
85240 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 341);
85241 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 341);
85242 }
85243 else if (type == 214)
85244 {
85245 Gore.NewGore(position, velocity, 342);
85246 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 343);
85247 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 343);
85248 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 344);
85249 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 344);
85250 }
85251 else if (type == 215)
85252 {
85253 Gore.NewGore(position, velocity, 345);
85254 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 346);
85255 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 346);
85256 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 347);
85257 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 347);
85258 }
85259 else if (type == 216)
85260 {
85261 Gore.NewGore(position, velocity, 348);
85262 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 349);
85263 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 349);
85264 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 350);
85265 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 350);
85266 }
85267 }
85268 else if (type == 220 || type == 221)
85269 {
85270 if (life > 0)
85271 {
85272 for (int num679 = 0; (double)num679 < dmg / (double)lifeMax * 50.0; num679++)
85273 {
85274 Dust.NewDust(position, width, height, 151, hitDirection, -1f, 0, default(Color), 0.7f);
85275 }
85276 return;
85277 }
85278 for (int num680 = 0; num680 < 20; num680++)
85279 {
85280 Dust.NewDust(position, width, height, 151, 2.5f * (float)hitDirection, -2.5f, 0, default(Color), 0.7f);
85281 }
85282 if (type == 221)
85283 {
85284 Gore.NewGore(position, velocity, 298, scale);
85285 Gore.NewGore(position, velocity, 299, scale);
85286 }
85287 else
85288 {
85289 Gore.NewGore(position, velocity, 297, scale);
85290 }
85291 }
85292 else if (type == 21 || type == 31 || type == 294 || type == 295 || type == 296 || type == 32 || type == 44 || type == 45 || type == 77 || type == 110 || type == 167 || type == 197 || type == 201 || type == 202 || type == 203 || type == 287 || type == 291 || type == 292 || type == 293 || (type >= 322 && type <= 324) || type == 481 || (type >= 449 && type <= 452))
85293 {
85294 if (life > 0)
85295 {
85296 for (int num681 = 0; (double)num681 < dmg / (double)lifeMax * 50.0; num681++)
85297 {
85298 Dust.NewDust(position, width, height, 26, hitDirection, -1f);
85299 }
85300 return;
85301 }
85302 for (int num682 = 0; num682 < 20; num682++)
85303 {
85304 Dust.NewDust(position, width, height, 26, 2.5f * (float)hitDirection, -2.5f);
85305 }
85306 if (type == 167)
85307 {
85308 Gore.NewGore(position, velocity, 213, scale);
85309 Gore.NewGore(position, velocity, 214, scale);
85310 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 43, scale);
85311 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 43, scale);
85312 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 212, scale);
85313 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 212, scale);
85314 return;
85315 }
85316 if (type == 197)
85317 {
85318 Gore.NewGore(position, velocity, 257, scale);
85319 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 43, scale);
85320 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 43, scale);
85321 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 212, scale);
85322 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 212, scale);
85323 return;
85324 }
85325 if (type == 481)
85326 {
85327 Gore.NewGore(position, velocity, 695, scale);
85328 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 696, scale);
85329 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 696, scale);
85330 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 697, scale);
85331 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 697, scale);
85332 return;
85333 }
85334 if (type == 201 || type == 450)
85335 {
85336 Gore.NewGore(position, velocity, 265, scale);
85337 Gore.NewGore(position, velocity, 267, scale);
85338 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 43, scale);
85339 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 43, scale);
85340 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 44, scale);
85341 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 44, scale);
85342 return;
85343 }
85344 if (type == 202 || type == 451)
85345 {
85346 Gore.NewGore(position, velocity, 268, scale);
85347 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 43, scale);
85348 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 43, scale);
85349 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 44, scale);
85350 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 44, scale);
85351 return;
85352 }
85353 if (type == 203 || type == 452)
85354 {
85355 Gore.NewGore(position, velocity, 269, scale);
85356 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 43, scale);
85357 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 43, scale);
85358 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 266, scale);
85359 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 266, scale);
85360 return;
85361 }
85362 if (type == 322)
85363 {
85364 Gore.NewGore(position, velocity, 460, scale);
85365 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 461, scale);
85366 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 462, scale);
85367 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 461, scale);
85368 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 462, scale);
85369 return;
85370 }
85371 if (type == 323)
85372 {
85373 Gore.NewGore(position, velocity, 463, scale);
85374 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 465, scale);
85375 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 464, scale);
85376 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 464, scale);
85377 return;
85378 }
85379 if (type == 324)
85380 {
85381 Gore.NewGore(position, velocity, 466, scale);
85382 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 467, scale);
85383 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 467, scale);
85384 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 468, scale);
85385 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 468, scale);
85386 return;
85387 }
85388 Gore.NewGore(position, velocity, 42, scale);
85389 if (type == 77)
85390 {
85391 Gore.NewGore(position, velocity, 106, scale);
85392 }
85393 if (type == 110)
85394 {
85395 Gore.NewGore(position, velocity, 130, scale);
85396 }
85397 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 43, scale);
85398 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 43, scale);
85399 if (type == 110)
85400 {
85401 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 131, scale);
85402 }
85403 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 44, scale);
85404 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 44, scale);
85405 }
85406 else if (type == 453)
85407 {
85408 if (life > 0)
85409 {
85410 for (int num683 = 0; (double)num683 < dmg / (double)lifeMax * 50.0; num683++)
85411 {
85412 Dust.NewDust(position, width, height, 26, hitDirection, -1f);
85413 }
85414 return;
85415 }
85416 for (int num684 = 0; num684 < 20; num684++)
85417 {
85418 Dust.NewDust(position, width, height, 26, 2.5f * (float)hitDirection, -2.5f);
85419 }
85420 if (altTexture == 0)
85421 {
85422 Gore.NewGore(position, velocity, IsShimmerVariant ? 1342 : 638, scale);
85423 }
85424 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1346 : 639, scale);
85425 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, IsShimmerVariant ? 1345 : 640, scale);
85426 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1344 : 641, scale);
85427 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, IsShimmerVariant ? 1347 : 642, scale);
85428 }
85429 else if ((type >= 269 && type <= 276) || (type >= 281 && type <= 286))
85430 {
85431 if (life > 0)
85432 {
85433 for (int num685 = 0; (double)num685 < dmg / (double)lifeMax * 50.0; num685++)
85434 {
85435 Dust.NewDust(position, width, height, 26, hitDirection, -1f);
85436 }
85437 return;
85438 }
85439 for (int num686 = 0; num686 < 20; num686++)
85440 {
85441 Dust.NewDust(position, width, height, 26, 2.5f * (float)hitDirection, -2.5f);
85442 }
85443 Gore.NewGore(position, velocity, 42, scale);
85444 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 43, scale);
85445 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 43, scale);
85446 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 44, scale);
85447 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 44, scale);
85448 if (type == 269)
85449 {
85450 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 406, scale);
85451 }
85452 if (type == 270)
85453 {
85454 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 407, scale);
85455 }
85456 if (type == 271 || type == 272)
85457 {
85458 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 408, scale);
85459 }
85460 if (type == 274)
85461 {
85462 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 409, scale);
85463 }
85464 if (type == 276)
85465 {
85466 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 410, scale);
85467 }
85468 }
85469 else if (type >= 277 && type <= 280)
85470 {
85471 if (life > 0)
85472 {
85473 for (int num687 = 0; (double)num687 < dmg / (double)lifeMax * 100.0; num687++)
85474 {
85475 int num688 = Dust.NewDust(position, width, height, 174, hitDirection, -1f);
85476 Main.dust[num688].scale = 1.1f;
85477 Main.dust[num688].noGravity = true;
85478 }
85479 return;
85480 }
85481 for (int num689 = 0; num689 < 75; num689++)
85482 {
85483 int num690 = Dust.NewDust(position, width, height, 174, 1.5f * (float)hitDirection, -0.5f);
85484 Dust dust = Main.dust[num690];
85485 dust.velocity *= 2f;
85486 Main.dust[num690].scale = 1.4f;
85487 Main.dust[num690].noGravity = true;
85488 }
85489 }
85490 else if (type == 341)
85491 {
85492 int num691 = 196;
85493 if (life > 0)
85494 {
85495 for (int num692 = 0; (double)num692 < dmg / (double)lifeMax * 50.0; num692++)
85496 {
85497 Dust.NewDust(position, width, height, num691);
85498 }
85499 return;
85500 }
85501 for (int num693 = 0; num693 < 20; num693++)
85502 {
85503 Dust.NewDust(position, width, height, num691);
85504 }
85505 int num694 = Gore.NewGore(new Vector2(position.X, position.Y - 10f), new Vector2(hitDirection, 0f), 61, scale);
85506 Gore gore2 = Main.gore[num694];
85507 gore2.velocity *= 0.3f;
85508 num694 = Gore.NewGore(new Vector2(position.X, position.Y + (float)(height / 2) - 10f), new Vector2(hitDirection, 0f), 62, scale);
85509 gore2 = Main.gore[num694];
85510 gore2.velocity *= 0.3f;
85511 num694 = Gore.NewGore(new Vector2(position.X, position.Y + (float)height - 10f), new Vector2(hitDirection, 0f), 63, scale);
85512 gore2 = Main.gore[num694];
85513 gore2.velocity *= 0.3f;
85514 }
85515 else if (type == 85 || type == 629)
85516 {
85517 int num695 = 7;
85518 if (ai[3] == 2f)
85519 {
85520 num695 = 10;
85521 }
85522 if (ai[3] == 3f)
85523 {
85524 num695 = 37;
85525 }
85526 if (life > 0)
85527 {
85528 for (int num696 = 0; (double)num696 < dmg / (double)lifeMax * 50.0; num696++)
85529 {
85530 Dust.NewDust(position, width, height, num695);
85531 }
85532 return;
85533 }
85534 for (int num697 = 0; num697 < 20; num697++)
85535 {
85536 Dust.NewDust(position, width, height, num695);
85537 }
85538 int num698 = Gore.NewGore(new Vector2(position.X, position.Y - 10f), new Vector2(hitDirection, 0f), 61, scale);
85539 Gore gore2 = Main.gore[num698];
85540 gore2.velocity *= 0.3f;
85541 num698 = Gore.NewGore(new Vector2(position.X, position.Y + (float)(height / 2) - 10f), new Vector2(hitDirection, 0f), 62, scale);
85542 gore2 = Main.gore[num698];
85543 gore2.velocity *= 0.3f;
85544 num698 = Gore.NewGore(new Vector2(position.X, position.Y + (float)height - 10f), new Vector2(hitDirection, 0f), 63, scale);
85545 gore2 = Main.gore[num698];
85546 gore2.velocity *= 0.3f;
85547 }
85548 else if (type == 473 || type == 474 || type == 475 || type == 476)
85549 {
85550 int num699 = 31;
85551 if (life > 0)
85552 {
85553 for (int num700 = 0; (double)num700 < dmg / (double)lifeMax * 50.0; num700++)
85554 {
85555 Dust.NewDust(position, width, height, num699);
85556 }
85557 return;
85558 }
85559 for (int num701 = 0; num701 < 20; num701++)
85560 {
85561 Dust.NewDust(position, width, height, num699);
85562 }
85563 int num702 = Gore.NewGore(base.Center, new Vector2(hitDirection, 0f), 61, scale);
85564 Gore gore2 = Main.gore[num702];
85565 gore2.velocity *= 0.3f;
85566 num702 = Gore.NewGore(base.Center, new Vector2(hitDirection, 0f), 62, scale);
85567 gore2 = Main.gore[num702];
85568 gore2.velocity *= 0.3f;
85569 num702 = Gore.NewGore(base.Center, new Vector2(hitDirection, 0f), 63, scale);
85570 gore2 = Main.gore[num702];
85571 gore2.velocity *= 0.3f;
85572 }
85573 else if (type == 169)
85574 {
85575 if (life > 0)
85576 {
85577 for (int num703 = 0; (double)num703 < dmg / (double)lifeMax * 50.0; num703++)
85578 {
85579 int num704 = Dust.NewDust(position, width, height, 92, 0f, 0f, 0, default(Color), 1.5f);
85580 Dust dust = Main.dust[num704];
85581 dust.velocity *= 1.5f;
85582 Main.dust[num704].noGravity = true;
85583 }
85584 return;
85585 }
85586 for (int num705 = 0; num705 < 100; num705++)
85587 {
85588 int num706 = Dust.NewDust(position, width, height, 92, 0f, 0f, 0, default(Color), 1.5f);
85589 Main.dust[num706].scale = 1.5f;
85590 Dust dust = Main.dust[num706];
85591 dust.velocity *= 2f;
85592 Main.dust[num706].noGravity = true;
85593 }
85594 }
85595 else if (type == 170 || type == 180)
85596 {
85597 if (life > 0)
85598 {
85599 for (int num707 = 0; (double)num707 < dmg / (double)lifeMax * 50.0; num707++)
85600 {
85601 int num708 = Dust.NewDust(position, width, height, 54, 0f, 0f, 0, default(Color), 1.5f);
85602 Dust dust = Main.dust[num708];
85603 dust.velocity *= 1.5f;
85604 Main.dust[num708].noGravity = true;
85605 }
85606 return;
85607 }
85608 for (int num709 = 0; num709 < 10; num709++)
85609 {
85610 int num710 = Dust.NewDust(position, width, height, 54, 0f, 0f, 0, default(Color), 1.5f);
85611 Dust dust = Main.dust[num710];
85612 dust.velocity *= 2f;
85613 Main.dust[num710].noGravity = true;
85614 }
85615 for (int num711 = 0; num711 < 4; num711++)
85616 {
85617 int num712 = Gore.NewGore(new Vector2(position.X, position.Y + (float)(height / 2) - 10f), new Vector2(hitDirection, 0f), 99, scale);
85618 Gore gore2 = Main.gore[num712];
85619 gore2.velocity *= 0.3f;
85620 }
85621 }
85622 else if (type == 171)
85623 {
85624 if (life > 0)
85625 {
85626 for (int num713 = 0; (double)num713 < dmg / (double)lifeMax * 50.0; num713++)
85627 {
85628 int num714 = Dust.NewDust(position, width, height, 16, 0f, 0f, 0, default(Color), 1.5f);
85629 Dust dust = Main.dust[num714];
85630 dust.velocity *= 1.5f;
85631 Main.dust[num714].noGravity = true;
85632 }
85633 return;
85634 }
85635 for (int num715 = 0; num715 < 10; num715++)
85636 {
85637 int num716 = Dust.NewDust(position, width, height, 16, 0f, 0f, 0, default(Color), 1.5f);
85638 Dust dust = Main.dust[num716];
85639 dust.velocity *= 2f;
85640 Main.dust[num716].noGravity = true;
85641 }
85642 for (int num717 = 0; num717 < 4; num717++)
85643 {
85644 int num718 = 11 + num717;
85645 if (num718 > 13)
85646 {
85647 num718 = Main.rand.Next(11, 14);
85648 }
85649 int num719 = Gore.NewGore(new Vector2(position.X, position.Y + (float)(height / 2) - 10f), new Vector2(hitDirection, 0f), num718, scale);
85650 Gore gore2 = Main.gore[num719];
85651 gore2.velocity *= 0.3f;
85652 }
85653 }
85654 else if (type == 290)
85655 {
85656 if (life <= 0)
85657 {
85658 for (int num720 = 0; num720 < 10; num720++)
85659 {
85660 int num721 = Dust.NewDust(position, width, height, 16, 0f, 0f, 0, default(Color), 1.5f);
85661 Dust dust = Main.dust[num721];
85662 dust.velocity *= 2f;
85663 Main.dust[num721].noGravity = true;
85664 }
85665 int num722 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(11, 14), scale);
85666 Gore gore2 = Main.gore[num722];
85667 gore2.velocity *= 0.5f;
85668 num722 = Gore.NewGore(new Vector2(position.X, position.Y + 20f), default(Vector2), Main.rand.Next(11, 14), scale);
85669 gore2 = Main.gore[num722];
85670 gore2.velocity *= 0.5f;
85671 num722 = Gore.NewGore(new Vector2(position.X, position.Y + 40f), default(Vector2), Main.rand.Next(11, 14), scale);
85672 gore2 = Main.gore[num722];
85673 gore2.velocity *= 0.5f;
85674 }
85675 }
85676 else if (type >= 87 && type <= 92)
85677 {
85678 if (life > 0)
85679 {
85680 for (int num723 = 0; (double)num723 < dmg / (double)lifeMax * 50.0; num723++)
85681 {
85682 int num724 = Dust.NewDust(position, width, height, 16, 0f, 0f, 0, default(Color), 1.5f);
85683 Dust dust = Main.dust[num724];
85684 dust.velocity *= 1.5f;
85685 Main.dust[num724].noGravity = true;
85686 }
85687 return;
85688 }
85689 for (int num725 = 0; num725 < 10; num725++)
85690 {
85691 int num726 = Dust.NewDust(position, width, height, 16, 0f, 0f, 0, default(Color), 1.5f);
85692 Dust dust = Main.dust[num726];
85693 dust.velocity *= 2f;
85694 Main.dust[num726].noGravity = true;
85695 }
85696 int num727 = Main.rand.Next(1, 4);
85697 for (int num728 = 0; num728 < num727; num728++)
85698 {
85699 int num729 = Gore.NewGore(new Vector2(position.X, position.Y + (float)(height / 2) - 10f), new Vector2(hitDirection, 0f), Main.rand.Next(11, 14), scale);
85700 Gore gore2 = Main.gore[num729];
85701 gore2.velocity *= 0.8f;
85702 }
85703 }
85704 else if (type == 78 || type == 79 || type == 80 || type == 630)
85705 {
85706 if (life > 0)
85707 {
85708 for (int num730 = 0; (double)num730 < dmg / (double)lifeMax * 50.0; num730++)
85709 {
85710 int num731 = Dust.NewDust(position, width, height, 31, 0f, 0f, 0, default(Color), 1.5f);
85711 Dust dust = Main.dust[num731];
85712 dust.velocity *= 2f;
85713 Main.dust[num731].noGravity = true;
85714 }
85715 return;
85716 }
85717 for (int num732 = 0; num732 < 20; num732++)
85718 {
85719 int num733 = Dust.NewDust(position, width, height, 31, 0f, 0f, 0, default(Color), 1.5f);
85720 Dust dust = Main.dust[num733];
85721 dust.velocity *= 2f;
85722 Main.dust[num733].noGravity = true;
85723 }
85724 int num734 = Gore.NewGore(new Vector2(position.X, position.Y - 10f), new Vector2(hitDirection, 0f), 61, scale);
85725 Gore gore2 = Main.gore[num734];
85726 gore2.velocity *= 0.3f;
85727 num734 = Gore.NewGore(new Vector2(position.X, position.Y + (float)(height / 2) - 10f), new Vector2(hitDirection, 0f), 62, scale);
85728 gore2 = Main.gore[num734];
85729 gore2.velocity *= 0.3f;
85730 num734 = Gore.NewGore(new Vector2(position.X, position.Y + (float)height - 10f), new Vector2(hitDirection, 0f), 63, scale);
85731 gore2 = Main.gore[num734];
85732 gore2.velocity *= 0.3f;
85733 }
85734 else if (type == 82 || type == 158 || type == 159 || type == 250 || type == 253)
85735 {
85736 if (life > 0)
85737 {
85738 for (int num735 = 0; (double)num735 < dmg / (double)lifeMax * 50.0; num735++)
85739 {
85740 int num736 = Dust.NewDust(position, width, height, 54, 0f, 0f, 50, default(Color), 1.5f);
85741 Dust dust = Main.dust[num736];
85742 dust.velocity *= 2f;
85743 Main.dust[num736].noGravity = true;
85744 }
85745 return;
85746 }
85747 for (int num737 = 0; num737 < 20; num737++)
85748 {
85749 int num738 = Dust.NewDust(position, width, height, 54, 0f, 0f, 50, default(Color), 1.5f);
85750 Dust dust = Main.dust[num738];
85751 dust.velocity *= 2f;
85752 Main.dust[num738].noGravity = true;
85753 }
85754 int num739 = Gore.NewGore(new Vector2(position.X, position.Y - 10f), new Vector2(hitDirection, 0f), 99, scale);
85755 Gore gore2 = Main.gore[num739];
85756 gore2.velocity *= 0.3f;
85757 num739 = Gore.NewGore(new Vector2(position.X, position.Y + (float)(height / 2) - 15f), new Vector2(hitDirection, 0f), 99, scale);
85758 gore2 = Main.gore[num739];
85759 gore2.velocity *= 0.3f;
85760 num739 = Gore.NewGore(new Vector2(position.X, position.Y + (float)height - 20f), new Vector2(hitDirection, 0f), 99, scale);
85761 gore2 = Main.gore[num739];
85762 gore2.velocity *= 0.3f;
85763 }
85764 else if (type == 316 || type == 330)
85765 {
85766 if (life > 0)
85767 {
85768 for (int num740 = 0; (double)num740 < dmg / (double)lifeMax * 100.0; num740++)
85769 {
85770 int num741 = Dust.NewDust(position, width, height, 192, hitDirection, -1f, 100, new Color(100, 100, 100, 100));
85771 Main.dust[num741].noGravity = true;
85772 }
85773 }
85774 else
85775 {
85776 for (int num742 = 0; num742 < 50; num742++)
85777 {
85778 int num743 = Dust.NewDust(position, width, height, 192, 2 * hitDirection, -2f, 100, new Color(100, 100, 100, 100));
85779 Main.dust[num743].noGravity = true;
85780 }
85781 }
85782 }
85783 else if (type == 662)
85784 {
85785 if (life > 0)
85786 {
85787 for (int num744 = 0; (double)num744 < dmg / (double)lifeMax * 100.0; num744++)
85788 {
85789 int num745 = Dust.NewDust(position, width, height, 180, velocity.X, velocity.Y);
85790 Dust dust = Main.dust[num745];
85791 dust.velocity *= 2f;
85792 Main.dust[num745].noGravity = true;
85793 Main.dust[num745].scale = 1.4f;
85794 }
85795 }
85796 else
85797 {
85798 for (int num746 = 0; num746 < 50; num746++)
85799 {
85800 int num747 = Dust.NewDust(position, width, height, 180, velocity.X, velocity.Y);
85801 Dust dust = Main.dust[num747];
85802 dust.velocity *= 2f;
85803 Main.dust[num747].noGravity = true;
85804 Main.dust[num747].scale = 1.4f;
85805 }
85806 }
85807 }
85808 else if (type == 315)
85809 {
85810 if (life > 0)
85811 {
85812 for (int num748 = 0; (double)num748 < dmg / (double)lifeMax * 50.0; num748++)
85813 {
85814 int num749 = Dust.NewDust(position, width, height, 54, 0f, 0f, 50, default(Color), 1.5f);
85815 Dust dust = Main.dust[num749];
85816 dust.velocity *= 2f;
85817 Main.dust[num749].noGravity = true;
85818 }
85819 return;
85820 }
85821 for (int num750 = 0; num750 < 20; num750++)
85822 {
85823 int num751 = Dust.NewDust(position, width, height, 54, 0f, 0f, 50, default(Color), 1.5f);
85824 Dust dust = Main.dust[num751];
85825 dust.velocity *= 2f;
85826 Main.dust[num751].noGravity = true;
85827 }
85828 int num752 = Gore.NewGore(new Vector2(position.X, position.Y - 10f), new Vector2(hitDirection, 0f), 99, scale);
85829 Gore gore2 = Main.gore[num752];
85830 gore2.velocity *= 0.3f;
85831 num752 = Gore.NewGore(new Vector2(position.X, position.Y + (float)(height / 2) - 15f), new Vector2(hitDirection, 0f), 99, scale);
85832 gore2 = Main.gore[num752];
85833 gore2.velocity *= 0.3f;
85834 num752 = Gore.NewGore(new Vector2(position.X, position.Y + (float)height - 20f), new Vector2(hitDirection, 0f), 99, scale);
85835 gore2 = Main.gore[num752];
85836 gore2.velocity *= 0.3f;
85837 num752 = Gore.NewGore(new Vector2(position.X, position.Y), new Vector2(hitDirection, 0f), 446, scale);
85838 gore2 = Main.gore[num752];
85839 gore2.velocity *= 0.1f;
85840 }
85841 else if (type == 254 || type == 255 || type == 256 || type == 257 || type == 258 || type == 259 || type == 260 || type == 261 || type == 634 || type == 635)
85842 {
85843 if (life > 0)
85844 {
85845 for (int num753 = 0; (double)num753 < dmg / (double)lifeMax * 50.0; num753++)
85846 {
85847 int num754 = Dust.NewDust(position, width, height, 165, 0f, 0f, 50, default(Color), 1.5f);
85848 Dust dust = Main.dust[num754];
85849 dust.velocity *= 2f;
85850 Main.dust[num754].noGravity = true;
85851 }
85852 return;
85853 }
85854 for (int num755 = 0; num755 < 20; num755++)
85855 {
85856 int num756 = Dust.NewDust(position, width, height, 165, 0f, 0f, 50, default(Color), 1.5f);
85857 Dust dust = Main.dust[num756];
85858 dust.velocity *= 2f;
85859 Main.dust[num756].noGravity = true;
85860 }
85861 if (type != 261)
85862 {
85863 int num757 = Gore.NewGore(new Vector2(position.X, position.Y - 10f), new Vector2(hitDirection, 0f), 375, scale);
85864 Gore gore2 = Main.gore[num757];
85865 gore2.velocity *= 0.3f;
85866 num757 = Gore.NewGore(new Vector2(position.X, position.Y + (float)(height / 2) - 15f), new Vector2(hitDirection, 0f), 376, scale);
85867 gore2 = Main.gore[num757];
85868 gore2.velocity *= 0.3f;
85869 num757 = Gore.NewGore(new Vector2(position.X, position.Y + (float)height - 20f), new Vector2(hitDirection, 0f), 377, scale);
85870 gore2 = Main.gore[num757];
85871 gore2.velocity *= 0.3f;
85872 }
85873 }
85874 else if (type == 140)
85875 {
85876 if (life <= 0)
85877 {
85878 for (int num758 = 0; num758 < 20; num758++)
85879 {
85880 int num759 = Dust.NewDust(position, width, height, 54, 0f, 0f, 50, default(Color), 1.5f);
85881 Dust dust = Main.dust[num759];
85882 dust.velocity *= 2f;
85883 Main.dust[num759].noGravity = true;
85884 }
85885 int num760 = Gore.NewGore(new Vector2(position.X, position.Y - 10f), new Vector2(hitDirection, 0f), 99, scale);
85886 Gore gore2 = Main.gore[num760];
85887 gore2.velocity *= 0.3f;
85888 num760 = Gore.NewGore(new Vector2(position.X, position.Y + (float)(height / 2) - 15f), new Vector2(hitDirection, 0f), 99, scale);
85889 gore2 = Main.gore[num760];
85890 gore2.velocity *= 0.3f;
85891 num760 = Gore.NewGore(new Vector2(position.X, position.Y + (float)height - 20f), new Vector2(hitDirection, 0f), 99, scale);
85892 gore2 = Main.gore[num760];
85893 gore2.velocity *= 0.3f;
85894 }
85895 }
85896 else if (type == 39 || type == 40 || type == 41)
85897 {
85898 if (life > 0)
85899 {
85900 for (int num761 = 0; (double)num761 < dmg / (double)lifeMax * 50.0; num761++)
85901 {
85902 Dust.NewDust(position, width, height, 26, hitDirection, -1f);
85903 }
85904 return;
85905 }
85906 for (int num762 = 0; num762 < 20; num762++)
85907 {
85908 Dust.NewDust(position, width, height, 26, 2.5f * (float)hitDirection, -2.5f);
85909 }
85910 Gore.NewGore(position, velocity, type - 39 + 67);
85911 }
85912 else if (type == 34)
85913 {
85914 if (life > 0)
85915 {
85916 for (int num763 = 0; (double)num763 < dmg / (double)lifeMax * 30.0; num763++)
85917 {
85918 int num764 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 15, (0f - velocity.X) * 0.2f, (0f - velocity.Y) * 0.2f, 100, default(Color), 1.8f);
85919 Main.dust[num764].noLight = true;
85920 Main.dust[num764].noGravity = true;
85921 Dust dust = Main.dust[num764];
85922 dust.velocity *= 1.3f;
85923 num764 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 26, (0f - velocity.X) * 0.2f, (0f - velocity.Y) * 0.2f, 0, default(Color), 0.9f);
85924 Main.dust[num764].noLight = true;
85925 dust = Main.dust[num764];
85926 dust.velocity *= 1.3f;
85927 }
85928 }
85929 else
85930 {
85931 for (int num765 = 0; num765 < 15; num765++)
85932 {
85933 int num766 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 15, (0f - velocity.X) * 0.2f, (0f - velocity.Y) * 0.2f, 100, default(Color), 1.8f);
85934 Main.dust[num766].noLight = true;
85935 Main.dust[num766].noGravity = true;
85936 Dust dust = Main.dust[num766];
85937 dust.velocity *= 1.3f;
85938 num766 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 26, (0f - velocity.X) * 0.2f, (0f - velocity.Y) * 0.2f, 0, default(Color), 0.9f);
85939 Main.dust[num766].noLight = true;
85940 dust = Main.dust[num766];
85941 dust.velocity *= 1.3f;
85942 }
85943 }
85944 }
85945 else if (type == 289)
85946 {
85947 if (life > 0)
85948 {
85949 for (int num767 = 0; (double)num767 < dmg / (double)lifeMax * 30.0; num767++)
85950 {
85951 int num768 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 181, (0f - velocity.X) * 0.2f, (0f - velocity.Y) * 0.2f, 100, default(Color), 1.8f);
85952 Main.dust[num768].noLight = true;
85953 Main.dust[num768].noGravity = true;
85954 Dust dust = Main.dust[num768];
85955 dust.velocity *= 1.3f;
85956 }
85957 }
85958 else
85959 {
85960 for (int num769 = 0; num769 < 50; num769++)
85961 {
85962 int num770 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 181, (0f - velocity.X) * 0.2f, (0f - velocity.Y) * 0.2f, 100, default(Color), 1.8f);
85963 Main.dust[num770].noLight = true;
85964 Main.dust[num770].noGravity = true;
85965 Dust dust = Main.dust[num770];
85966 dust.velocity *= 1.3f;
85967 }
85968 }
85969 }
85970 else if (type == 35 || type == 36)
85971 {
85972 if (life > 0)
85973 {
85974 for (int num771 = 0; (double)num771 < dmg / (double)lifeMax * 100.0; num771++)
85975 {
85976 Dust.NewDust(position, width, height, 26, hitDirection, -1f);
85977 }
85978 return;
85979 }
85980 for (int num772 = 0; num772 < 150; num772++)
85981 {
85982 Dust.NewDust(position, width, height, 26, 2.5f * (float)hitDirection, -2.5f);
85983 }
85984 if (type == 35)
85985 {
85986 Gore.NewGore(position, velocity, 54);
85987 Gore.NewGore(position, velocity, 55);
85988 return;
85989 }
85990 Gore.NewGore(position, velocity, 56);
85991 Gore.NewGore(position, velocity, 57);
85992 Gore.NewGore(position, velocity, 57);
85993 Gore.NewGore(position, velocity, 57);
85994 }
85995 else if (type == 139)
85996 {
85997 if (life <= 0)
85998 {
85999 for (int num773 = 0; num773 < 10; num773++)
86000 {
86001 int num774 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 31, 0f, 0f, 100, default(Color), 1.5f);
86002 Dust dust = Main.dust[num774];
86003 dust.velocity *= 1.4f;
86004 }
86005 for (int num775 = 0; num775 < 5; num775++)
86006 {
86007 int num776 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, 0f, 0f, 100, default(Color), 2.5f);
86008 Main.dust[num776].noGravity = true;
86009 Dust dust = Main.dust[num776];
86010 dust.velocity *= 5f;
86011 num776 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, 0f, 0f, 100, default(Color), 1.5f);
86012 dust = Main.dust[num776];
86013 dust.velocity *= 3f;
86014 }
86015 int num777 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
86016 Gore gore2 = Main.gore[num777];
86017 gore2.velocity *= 0.4f;
86018 Main.gore[num777].velocity.X += 1f;
86019 Main.gore[num777].velocity.Y += 1f;
86020 num777 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
86021 gore2 = Main.gore[num777];
86022 gore2.velocity *= 0.4f;
86023 Main.gore[num777].velocity.X -= 1f;
86024 Main.gore[num777].velocity.Y += 1f;
86025 num777 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
86026 gore2 = Main.gore[num777];
86027 gore2.velocity *= 0.4f;
86028 Main.gore[num777].velocity.X += 1f;
86029 Main.gore[num777].velocity.Y -= 1f;
86030 num777 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
86031 gore2 = Main.gore[num777];
86032 gore2.velocity *= 0.4f;
86033 Main.gore[num777].velocity.X -= 1f;
86034 Main.gore[num777].velocity.Y -= 1f;
86035 }
86036 }
86037 else if (type == 467)
86038 {
86039 if (life <= 0)
86040 {
86041 for (int num778 = 0; num778 < 7; num778++)
86042 {
86043 int num779 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 31, 0f, 0f, 100, default(Color), 1.5f);
86044 Dust dust = Main.dust[num779];
86045 dust.velocity *= 1.4f;
86046 }
86047 for (int num780 = 0; num780 < 3; num780++)
86048 {
86049 int num781 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, 0f, 0f, 100, default(Color), 2.5f);
86050 Main.dust[num781].noGravity = true;
86051 Dust dust = Main.dust[num781];
86052 dust.velocity *= 5f;
86053 num781 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, 0f, 0f, 100, default(Color), 1.5f);
86054 dust = Main.dust[num781];
86055 dust.velocity *= 3f;
86056 }
86057 Gore.NewGore(position, velocity, 660);
86058 Gore.NewGore(position, velocity, 660);
86059 }
86060 }
86061 else if (type >= 134 && type <= 136)
86062 {
86063 if (type == 135 && life > 0 && Main.netMode != 1)
86064 {
86065 int maxValue = 25;
86066 if (IsMechQueenUp)
86067 {
86068 maxValue = 50;
86069 }
86070 if (ai[2] == 0f && Main.rand.Next(maxValue) == 0)
86071 {
86072 ai[2] = 1f;
86073 int num782 = NewNPC(GetSpawnSource_NPCHurt(), (int)(position.X + (float)(width / 2)), (int)(position.Y + (float)height), 139);
86074 if (Main.netMode == 2 && num782 < 200)
86075 {
86076 NetMessage.SendData(23, -1, -1, null, num782);
86077 }
86078 netUpdate = true;
86079 }
86080 }
86081 if (life > 0)
86082 {
86083 return;
86084 }
86085 Gore.NewGore(position, velocity, 156);
86086 if (Main.rand.Next(2) == 0)
86087 {
86088 for (int num783 = 0; num783 < 10; num783++)
86089 {
86090 int num784 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 31, 0f, 0f, 100, default(Color), 1.5f);
86091 Dust dust = Main.dust[num784];
86092 dust.velocity *= 1.4f;
86093 }
86094 for (int num785 = 0; num785 < 5; num785++)
86095 {
86096 int num786 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, 0f, 0f, 100, default(Color), 2.5f);
86097 Main.dust[num786].noGravity = true;
86098 Dust dust = Main.dust[num786];
86099 dust.velocity *= 5f;
86100 num786 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, 0f, 0f, 100, default(Color), 1.5f);
86101 dust = Main.dust[num786];
86102 dust.velocity *= 3f;
86103 }
86104 int num787 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
86105 Gore gore2 = Main.gore[num787];
86106 gore2.velocity *= 0.4f;
86107 Main.gore[num787].velocity.X += 1f;
86108 Main.gore[num787].velocity.Y += 1f;
86109 num787 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
86110 gore2 = Main.gore[num787];
86111 gore2.velocity *= 0.4f;
86112 Main.gore[num787].velocity.X -= 1f;
86113 Main.gore[num787].velocity.Y += 1f;
86114 num787 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
86115 gore2 = Main.gore[num787];
86116 gore2.velocity *= 0.4f;
86117 Main.gore[num787].velocity.X += 1f;
86118 Main.gore[num787].velocity.Y -= 1f;
86119 num787 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
86120 gore2 = Main.gore[num787];
86121 gore2.velocity *= 0.4f;
86122 Main.gore[num787].velocity.X -= 1f;
86123 Main.gore[num787].velocity.Y -= 1f;
86124 }
86125 }
86126 else if (type == 347)
86127 {
86128 if (life <= 0)
86129 {
86130 Gore.NewGore(position, velocity, 524);
86131 Gore.NewGore(position, velocity, 525);
86132 Gore.NewGore(position, velocity, 526);
86133 Gore.NewGore(position, velocity, 527);
86134 for (int num788 = 0; num788 < 7; num788++)
86135 {
86136 int num789 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 31, 0f, 0f, 100, default(Color), 1.5f);
86137 Dust dust = Main.dust[num789];
86138 dust.velocity *= 1.4f;
86139 }
86140 for (int num790 = 0; num790 < 4; num790++)
86141 {
86142 int num791 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, 0f, 0f, 100, default(Color), 2.5f);
86143 Main.dust[num791].noGravity = true;
86144 Dust dust = Main.dust[num791];
86145 dust.velocity *= 5f;
86146 num791 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, 0f, 0f, 100, default(Color), 1.5f);
86147 dust = Main.dust[num791];
86148 dust.velocity *= 3f;
86149 }
86150 int num792 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
86151 Gore gore2 = Main.gore[num792];
86152 gore2.velocity *= 0.4f;
86153 Main.gore[num792].velocity.X += 1f;
86154 Main.gore[num792].velocity.Y += 1f;
86155 num792 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
86156 gore2 = Main.gore[num792];
86157 gore2.velocity *= 0.4f;
86158 Main.gore[num792].velocity.X -= 1f;
86159 Main.gore[num792].velocity.Y -= 1f;
86160 }
86161 }
86162 else if (type == 346)
86163 {
86164 if (life <= 0)
86165 {
86166 Gore.NewGore(position, velocity, 518);
86167 Gore.NewGore(position, velocity, 519);
86168 Gore.NewGore(position, velocity, 520);
86169 Gore.NewGore(position, velocity, 521);
86170 Gore.NewGore(position, velocity, 522);
86171 Gore.NewGore(position, velocity, 523);
86172 for (int num793 = 0; num793 < 10; num793++)
86173 {
86174 int num794 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 31, 0f, 0f, 100, default(Color), 1.5f);
86175 Dust dust = Main.dust[num794];
86176 dust.velocity *= 1.4f;
86177 }
86178 for (int num795 = 0; num795 < 5; num795++)
86179 {
86180 int num796 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, 0f, 0f, 100, default(Color), 2.5f);
86181 Main.dust[num796].noGravity = true;
86182 Dust dust = Main.dust[num796];
86183 dust.velocity *= 5f;
86184 num796 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, 0f, 0f, 100, default(Color), 1.5f);
86185 dust = Main.dust[num796];
86186 dust.velocity *= 3f;
86187 }
86188 int num797 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
86189 Gore gore2 = Main.gore[num797];
86190 gore2.velocity *= 0.4f;
86191 Main.gore[num797].velocity.X += 1f;
86192 Main.gore[num797].velocity.Y += 1f;
86193 num797 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
86194 gore2 = Main.gore[num797];
86195 gore2.velocity *= 0.4f;
86196 Main.gore[num797].velocity.X -= 1f;
86197 Main.gore[num797].velocity.Y += 1f;
86198 num797 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
86199 gore2 = Main.gore[num797];
86200 gore2.velocity *= 0.4f;
86201 Main.gore[num797].velocity.X += 1f;
86202 Main.gore[num797].velocity.Y -= 1f;
86203 num797 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
86204 gore2 = Main.gore[num797];
86205 gore2.velocity *= 0.4f;
86206 Main.gore[num797].velocity.X -= 1f;
86207 Main.gore[num797].velocity.Y -= 1f;
86208 }
86209 }
86210 else if (type == 127)
86211 {
86212 if (life <= 0)
86213 {
86214 Gore.NewGore(position, velocity, 149);
86215 Gore.NewGore(position, velocity, 150);
86216 for (int num798 = 0; num798 < 10; num798++)
86217 {
86218 int num799 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 31, 0f, 0f, 100, default(Color), 1.5f);
86219 Dust dust = Main.dust[num799];
86220 dust.velocity *= 1.4f;
86221 }
86222 for (int num800 = 0; num800 < 5; num800++)
86223 {
86224 int num801 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, 0f, 0f, 100, default(Color), 2.5f);
86225 Main.dust[num801].noGravity = true;
86226 Dust dust = Main.dust[num801];
86227 dust.velocity *= 5f;
86228 num801 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, 0f, 0f, 100, default(Color), 1.5f);
86229 dust = Main.dust[num801];
86230 dust.velocity *= 3f;
86231 }
86232 int num802 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
86233 Gore gore2 = Main.gore[num802];
86234 gore2.velocity *= 0.4f;
86235 Main.gore[num802].velocity.X += 1f;
86236 Main.gore[num802].velocity.Y += 1f;
86237 num802 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
86238 gore2 = Main.gore[num802];
86239 gore2.velocity *= 0.4f;
86240 Main.gore[num802].velocity.X -= 1f;
86241 Main.gore[num802].velocity.Y += 1f;
86242 num802 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
86243 gore2 = Main.gore[num802];
86244 gore2.velocity *= 0.4f;
86245 Main.gore[num802].velocity.X += 1f;
86246 Main.gore[num802].velocity.Y -= 1f;
86247 num802 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
86248 gore2 = Main.gore[num802];
86249 gore2.velocity *= 0.4f;
86250 Main.gore[num802].velocity.X -= 1f;
86251 Main.gore[num802].velocity.Y -= 1f;
86252 }
86253 }
86254 else if (type >= 128 && type <= 131)
86255 {
86256 if (life <= 0)
86257 {
86258 Gore.NewGore(position, velocity, 147);
86259 Gore.NewGore(position, velocity, 148);
86260 for (int num803 = 0; num803 < 10; num803++)
86261 {
86262 int num804 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 31, 0f, 0f, 100, default(Color), 1.5f);
86263 Dust dust = Main.dust[num804];
86264 dust.velocity *= 1.4f;
86265 }
86266 for (int num805 = 0; num805 < 5; num805++)
86267 {
86268 int num806 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, 0f, 0f, 100, default(Color), 2.5f);
86269 Main.dust[num806].noGravity = true;
86270 Dust dust = Main.dust[num806];
86271 dust.velocity *= 5f;
86272 num806 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, 0f, 0f, 100, default(Color), 1.5f);
86273 dust = Main.dust[num806];
86274 dust.velocity *= 3f;
86275 }
86276 int num807 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
86277 Gore gore2 = Main.gore[num807];
86278 gore2.velocity *= 0.4f;
86279 Main.gore[num807].velocity.X += 1f;
86280 Main.gore[num807].velocity.Y += 1f;
86281 num807 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
86282 gore2 = Main.gore[num807];
86283 gore2.velocity *= 0.4f;
86284 Main.gore[num807].velocity.X -= 1f;
86285 Main.gore[num807].velocity.Y += 1f;
86286 num807 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
86287 gore2 = Main.gore[num807];
86288 gore2.velocity *= 0.4f;
86289 Main.gore[num807].velocity.X += 1f;
86290 Main.gore[num807].velocity.Y -= 1f;
86291 num807 = Gore.NewGore(new Vector2(position.X, position.Y), default(Vector2), Main.rand.Next(61, 64));
86292 gore2 = Main.gore[num807];
86293 gore2.velocity *= 0.4f;
86294 Main.gore[num807].velocity.X -= 1f;
86295 Main.gore[num807].velocity.Y -= 1f;
86296 }
86297 }
86298 else if (type == 23)
86299 {
86300 if (life > 0)
86301 {
86302 for (int num808 = 0; (double)num808 < dmg / (double)lifeMax * 100.0; num808++)
86303 {
86304 int num809 = 25;
86305 if (Main.rand.Next(2) == 0)
86306 {
86307 num809 = 6;
86308 }
86309 Dust.NewDust(position, width, height, num809, hitDirection, -1f);
86310 int num810 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, velocity.X * 0.2f, velocity.Y * 0.2f, 100, default(Color), 2f);
86311 Main.dust[num810].noGravity = true;
86312 }
86313 return;
86314 }
86315 for (int num811 = 0; num811 < 50; num811++)
86316 {
86317 int num812 = 25;
86318 if (Main.rand.Next(2) == 0)
86319 {
86320 num812 = 6;
86321 }
86322 Dust.NewDust(position, width, height, num812, 2 * hitDirection, -2f);
86323 }
86324 for (int num813 = 0; num813 < 50; num813++)
86325 {
86326 int num814 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, velocity.X * 0.2f, velocity.Y * 0.2f, 100, default(Color), 2.5f);
86327 Dust dust = Main.dust[num814];
86328 dust.velocity *= 6f;
86329 Main.dust[num814].noGravity = true;
86330 }
86331 }
86332 else if (type == 24)
86333 {
86334 if (life > 0)
86335 {
86336 for (int num815 = 0; (double)num815 < dmg / (double)lifeMax * 100.0; num815++)
86337 {
86338 int num816 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, velocity.X, velocity.Y, 100, default(Color), 2.5f);
86339 Main.dust[num816].noGravity = true;
86340 }
86341 return;
86342 }
86343 for (int num817 = 0; num817 < 50; num817++)
86344 {
86345 int num818 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, velocity.X, velocity.Y, 100, default(Color), 2.5f);
86346 Main.dust[num818].noGravity = true;
86347 Dust dust = Main.dust[num818];
86348 dust.velocity *= 2f;
86349 }
86350 Gore.NewGore(position, velocity, 45);
86351 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 46);
86352 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 46);
86353 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 47);
86354 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 47);
86355 }
86356 else if (type == 25)
86357 {
86359 for (int num819 = 0; num819 < 20; num819++)
86360 {
86361 int num820 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, (0f - velocity.X) * 0.2f, (0f - velocity.Y) * 0.2f, 100, default(Color), 2f);
86362 Main.dust[num820].noGravity = true;
86363 Dust dust = Main.dust[num820];
86364 dust.velocity *= 2f;
86365 num820 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 6, (0f - velocity.X) * 0.2f, (0f - velocity.Y) * 0.2f, 100);
86366 dust = Main.dust[num820];
86367 dust.velocity *= 2f;
86368 }
86369 }
86370 else if (type == 33)
86371 {
86373 for (int num821 = 0; num821 < 20; num821++)
86374 {
86375 int num822 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 172, (0f - velocity.X) * 0.2f, (0f - velocity.Y) * 0.2f, 100, default(Color), 1.2f);
86376 Main.dust[num822].noGravity = true;
86377 Dust dust = Main.dust[num822];
86378 dust.velocity *= 2f;
86379 num822 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 172, (0f - velocity.X) * 0.2f, (0f - velocity.Y) * 0.2f, 100, default(Color), 0.6f);
86380 dust = Main.dust[num822];
86381 dust.velocity *= 2f;
86382 }
86383 }
86384 else if (type == 26 || type == 27 || type == 28 || type == 29 || type == 73 || type == 111)
86385 {
86386 if (life > 0)
86387 {
86388 for (int num823 = 0; (double)num823 < dmg / (double)lifeMax * 100.0; num823++)
86389 {
86390 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
86391 }
86392 return;
86393 }
86394 for (int num824 = 0; num824 < 50; num824++)
86395 {
86396 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
86397 }
86398 int num825 = 48;
86399 int num826 = 49;
86400 int num827 = 50;
86401 if (type == 111)
86402 {
86403 num825 = 623;
86404 num826 = 624;
86405 num827 = 625;
86406 }
86407 else if (type == 26)
86408 {
86409 num825 = 626;
86410 num826 = 627;
86411 num827 = 628;
86412 }
86413 else if (type == 73)
86414 {
86415 num825 = 629;
86416 num826 = 630;
86417 num827 = 631;
86418 }
86419 else if (type == 27)
86420 {
86421 num825 = 632;
86422 num826 = 633;
86423 num827 = 634;
86424 }
86425 else if (type == 28)
86426 {
86427 num825 = 635;
86428 num826 = 636;
86429 num827 = 637;
86430 }
86431 Gore.NewGore(position, velocity, num825, scale);
86432 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, num826, scale);
86433 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, num826, scale);
86434 if (type == 111)
86435 {
86436 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 131, scale);
86437 }
86438 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, num827, scale);
86439 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, num827, scale);
86440 }
86441 else if (type == 471)
86442 {
86443 if (life > 0)
86444 {
86445 for (int num828 = 0; (double)num828 < dmg / (double)lifeMax * 100.0; num828++)
86446 {
86447 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
86448 }
86449 return;
86450 }
86451 for (int num829 = 0; num829 < 50; num829++)
86452 {
86453 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
86454 }
86455 Gore.NewGore(position, velocity, 675, scale);
86456 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 676, scale);
86457 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 677, scale);
86458 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 678, scale);
86459 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 678, scale);
86460 }
86461 else if (type == 472)
86462 {
86463 if (life > 0)
86464 {
86465 for (int num830 = 0; (double)num830 < dmg / (double)lifeMax * 100.0; num830++)
86466 {
86467 int num831 = Dust.NewDust(position, width, height, 5, hitDirection, -1f);
86468 if (Main.rand.Next(3) != 0)
86469 {
86470 Main.dust[num831].noGravity = true;
86471 }
86472 Main.dust[num831].alpha = 100;
86473 }
86474 return;
86475 }
86476 for (int num832 = 0; num832 < 50; num832++)
86477 {
86478 int num833 = Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
86479 if (Main.rand.Next(3) != 0)
86480 {
86481 Main.dust[num833].noGravity = true;
86482 }
86483 Main.dust[num833].alpha = 100;
86484 }
86485 Gore.NewGore(position, velocity, 679, scale);
86486 Gore.NewGore(position, velocity, 680, scale);
86487 }
86488 else if (type == 480)
86489 {
86490 if (life > 0)
86491 {
86492 for (int num834 = 0; (double)num834 < dmg / (double)lifeMax * 100.0; num834++)
86493 {
86494 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
86495 }
86496 return;
86497 }
86498 for (int num835 = 0; num835 < 50; num835++)
86499 {
86500 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
86501 }
86502 Gore.NewGore(position, velocity, 692, scale);
86503 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 693, scale);
86504 Gore.NewGore(new Vector2(position.X, position.Y + 20f), velocity, 693, scale);
86505 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 694, scale);
86506 Gore.NewGore(new Vector2(position.X, position.Y + 34f), velocity, 694, scale);
86507 }
86508 else if (type == 185)
86509 {
86510 if (life > 0)
86511 {
86512 for (int num836 = 0; (double)num836 < dmg / (double)lifeMax * 100.0; num836++)
86513 {
86514 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
86515 }
86516 return;
86517 }
86518 for (int num837 = 0; num837 < 50; num837++)
86519 {
86520 Dust.NewDust(position, width, height, 5, 2.5f * (float)hitDirection, -2.5f);
86521 }
86522 Gore.NewGore(position, velocity, 240, scale);
86523 }
86524 else if (type == 30 || type == 665)
86525 {
86527 for (int num838 = 0; num838 < 20; num838++)
86528 {
86529 int num839 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 27, (0f - velocity.X) * 0.2f, (0f - velocity.Y) * 0.2f, 100, default(Color), 2f);
86530 Main.dust[num839].noGravity = true;
86531 Dust dust = Main.dust[num839];
86532 dust.velocity *= 2f;
86533 num839 = Dust.NewDust(new Vector2(position.X, position.Y), width, height, 27, (0f - velocity.X) * 0.2f, (0f - velocity.Y) * 0.2f, 100);
86534 dust = Main.dust[num839];
86535 dust.velocity *= 2f;
86536 }
86537 }
86538 else if (type == 42 || type == 176 || type == 205 || (type >= 231 && type <= 235))
86539 {
86540 if (life > 0)
86541 {
86542 for (int num840 = 0; (double)num840 < dmg / (double)lifeMax * 100.0; num840++)
86543 {
86544 Dust.NewDust(position, width, height, 18, hitDirection, -1f, alpha, this.color, scale);
86545 }
86546 return;
86547 }
86548 for (int num841 = 0; num841 < 50; num841++)
86549 {
86550 Dust.NewDust(position, width, height, 18, hitDirection, -2f, alpha, this.color, scale);
86551 }
86552 if (type == 205)
86553 {
86554 Gore.NewGore(position, velocity, 270, scale);
86555 Gore.NewGore(position, velocity, 271, scale);
86556 Gore.NewGore(position, velocity, 271, scale);
86557 Gore.NewGore(position, velocity, 272, scale);
86558 }
86559 else if (type == 176)
86560 {
86561 Gore.NewGore(position, velocity, 229, scale);
86562 Gore.NewGore(position, velocity, 230, scale);
86563 }
86564 else
86565 {
86566 Gore.NewGore(position, velocity, 70, scale);
86567 Gore.NewGore(position, velocity, 71, scale);
86568 }
86569 }
86570 else if (type == 43 || type == 56)
86571 {
86572 if (life > 0)
86573 {
86574 for (int num842 = 0; (double)num842 < dmg / (double)lifeMax * 100.0; num842++)
86575 {
86576 Dust.NewDust(position, width, height, 40, hitDirection, -1f, alpha, this.color, 1.2f);
86577 }
86578 return;
86579 }
86580 for (int num843 = 0; num843 < 50; num843++)
86581 {
86582 Dust.NewDust(position, width, height, 40, hitDirection, -2f, alpha, this.color, 1.2f);
86583 }
86584 Gore.NewGore(position, velocity, 72);
86585 Gore.NewGore(position, velocity, 72);
86586 }
86587 else if (type == 175)
86588 {
86589 if (life > 0)
86590 {
86591 for (int num844 = 0; (double)num844 < dmg / (double)lifeMax * 100.0; num844++)
86592 {
86593 Dust.NewDust(position, width, height, 40, hitDirection, -1f, alpha, this.color, 1.2f);
86594 }
86595 return;
86596 }
86597 for (int num845 = 0; num845 < 50; num845++)
86598 {
86599 Dust.NewDust(position, width, height, 40, hitDirection, -2f, alpha, this.color, 1.2f);
86600 }
86601 Gore.NewGore(position, velocity, 227);
86602 Gore.NewGore(position, velocity, 228);
86603 }
86604 else if (type == 48)
86605 {
86606 if (life > 0)
86607 {
86608 for (int num846 = 0; (double)num846 < dmg / (double)lifeMax * 100.0; num846++)
86609 {
86610 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
86611 }
86612 return;
86613 }
86614 for (int num847 = 0; num847 < 50; num847++)
86615 {
86616 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
86617 }
86618 Gore.NewGore(position, velocity, 80);
86619 Gore.NewGore(position, velocity, 81);
86620 }
86621 else if (type == 62 || type == 66)
86622 {
86623 if (life > 0)
86624 {
86625 for (int num848 = 0; (double)num848 < dmg / (double)lifeMax * 100.0; num848++)
86626 {
86627 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
86628 }
86629 return;
86630 }
86631 for (int num849 = 0; num849 < 50; num849++)
86632 {
86633 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
86634 }
86635 Gore.NewGore(position, velocity, 93);
86636 Gore.NewGore(position, velocity, 94);
86637 Gore.NewGore(position, velocity, 94);
86638 }
86639 else
86640 {
86641 if (type != 156)
86642 {
86643 return;
86644 }
86645 if (life > 0)
86646 {
86647 for (int num850 = 0; (double)num850 < dmg / (double)lifeMax * 100.0; num850++)
86648 {
86649 Dust.NewDust(position, width, height, 5, hitDirection, -1f);
86650 }
86651 return;
86652 }
86653 for (int num851 = 0; num851 < 50; num851++)
86654 {
86655 Dust.NewDust(position, width, height, 5, 2 * hitDirection, -2f);
86656 }
86657 Gore.NewGore(position, velocity, 184);
86658 Gore.NewGore(position, velocity, 185);
86659 Gore.NewGore(position, velocity, 185);
86660 }
86661 }
86662 }
static double Abs(double value)
const double PI
Definition Math.cs:16
static void PlaySound(int type, Vector2 position, int style=1)
static ActiveSound GetActiveSound(SlotId id)
Vector2 velocity
Definition Entity.cs:16
float Distance(Vector2 Other)
Definition Entity.cs:187
Vector2 position
Definition Entity.cs:14
static void RequestParticleSpawn(bool clientOnly, ParticleOrchestraType type, ParticleOrchestraSettings settings, int? overrideInvokingPlayerIndex=null)
static void CheckProgress(int slainMonsterID)
Definition DD2Event.cs:338
static void ThrowPieces(Vector2 MoonlordCoreCenter, int DramaSeed)
static bool[] IsTownPet
Definition NPCID.cs:4099
static readonly LegacySoundStyle Item10
Definition SoundID.cs:434
static int CountNPCS(int Type)
Definition NPC.cs:86664
float[] localAI
Definition NPC.cs:449
int spriteDirection
Definition NPC.cs:517
static bool unlockedSlimePurpleSpawn
Definition NPC.cs:313
int lifeMax
Definition NPC.cs:479
IEntitySource GetSpawnSource_NPCHurt()
Definition NPC.cs:87521
static Color AI_121_QueenSlime_GetDustColor()
Definition NPC.cs:38257
float[] ai
Definition NPC.cs:447
float value
Definition NPC.cs:523
static bool IsMechQueenUp
Definition NPC.cs:834
float scale
Definition NPC.cs:493
int type
Definition NPC.cs:445
int alpha
Definition NPC.cs:489
Color color
Definition NPC.cs:487
int altTexture
Definition NPC.cs:99
float rotation
Definition NPC.cs:501
bool UsesPartyHat()
Definition NPC.cs:58991
static int NewNPC(IEntitySource source, int X, int Y, int Type, int Start=0, float ai0=0f, float ai1=0f, float ai2=0f, float ai3=0f, int Target=255)
Definition NPC.cs:77654
bool IsShimmerVariant
Definition NPC.cs:721
void Transform(int newType)
Definition NPC.cs:77913
int life
Definition NPC.cs:477
IEntitySource GetSpawnSource_ForProjectile()
Definition NPC.cs:87526
bool daybreak
Definition NPC.cs:277
PartyHatColor GetPartyHatColor()
Definition NPC.cs:59016
NPC AI_113_WindyBalloon_GetSlaveNPC()
Definition NPC.cs:41282
bool netUpdate
Definition NPC.cs:507
Vector2[] oldPos
Definition NPC.cs:155
int target
Definition NPC.cs:459
bool townNPC
Definition NPC.cs:537
static Color LightSeaGreen
Definition Color.cs:220
static Color Transparent
Definition Color.cs:76
static Color Lerp(Color value1, Color value2, float amount)
Definition Color.cs:491
static Matrix CreateRotationZ(float radians)
Definition Matrix.cs:746
static Vector2 Transform(Vector2 position, Matrix matrix)
Definition Vector2.cs:317
static Vector2 Lerp(Vector2 value1, Vector2 value2, float amount)
Definition Vector2.cs:227
static SlotId FromFloat(float value)
Definition SlotId.cs:80

References System.Math.Abs(), Terraria.Collision.CanHitLine(), Terraria.GameContent.Events.DD2Event.CheckProgress(), Terraria.Dust.CloneDust(), Microsoft.Xna.Framework.Graphics.Color, Microsoft.Xna.Framework.Matrix.CreateRotationZ(), Terraria.Main.dust, Terraria.Main.expertMode, ReLogic.Utilities.SlotId.FromFloat(), Terraria.Audio.SoundEngine.GetActiveSound(), Terraria.Main.getGoodWorld, Terraria.Main.gore, Microsoft.Xna.Framework.Color.HotPink, Terraria.Main.hslToRgb(), Terraria.ID.NPCID.Sets.IsTownPet, Terraria.ID.SoundID.Item10, Microsoft.Xna.Framework.Vector2.Length(), Microsoft.Xna.Framework.Color.Lerp(), Microsoft.Xna.Framework.Vector2.Lerp(), Microsoft.Xna.Framework.Color.LightBlue, Microsoft.Xna.Framework.Color.LightPink, Microsoft.Xna.Framework.Color.LightSeaGreen, Microsoft.Xna.Framework.Color.LimeGreen, Terraria.Main.maxTilesY, Terraria.Main.myPlayer, Terraria.Main.netMode, Terraria.Dust.NewDust(), Terraria.Dust.NewDustDirect(), Terraria.Gore.NewGore(), Terraria.Gore.NewGorePerfect(), Terraria.Projectile.NewProjectile(), Microsoft.Xna.Framework.Vector2.Normalize(), Terraria.Main.npc, Microsoft.Xna.Framework.Vector2.One, System.Math.PI, Terraria.Main.player, Terraria.Audio.SoundEngine.PlaySound(), Terraria.Utils.PoofOfSmoke(), Terraria.Main.rand, Terraria.Utils.RandomVector2(), Terraria.Main.remixWorld, Terraria.GameContent.Drawing.ParticleOrchestrator.RequestParticleSpawn(), Microsoft.Xna.Framework.Color.RoyalBlue, Terraria.Main.screenPosition, Terraria.Main.screenWidth, Terraria.NetMessage.SendData(), Microsoft.Xna.Framework.Color.SkyBlue, Terraria.WorldGen.SolidTile(), Terraria.Collision.SolidTiles(), Terraria.WorldGen.SquareTileFrame(), Terraria.GameContent.Events.MoonlordDeathDrama.ThrowPieces(), Terraria.Main.tile, Microsoft.Xna.Framework.Vector2.Transform(), Microsoft.Xna.Framework.Color.Transparent, System.type, Microsoft.Xna.Framework.Vector2.UnitX, Microsoft.Xna.Framework.Vector2.UnitY, System.value, Microsoft.Xna.Framework.Graphics.Vector2, Microsoft.Xna.Framework.Color.White, System.X, System.Y, and Microsoft.Xna.Framework.Vector2.Zero.

Referenced by Terraria.NPC.AI(), Terraria.NPC.AI_006_Worms(), Terraria.NPC.AI_007_TownEntities(), Terraria.NPC.AI_026_Unicorns(), Terraria.NPC.AI_037_Destroyer(), Terraria.NPC.AI_084_LunaticCultist(), Terraria.NPC.AI_107_ImprovedWalkers(), Terraria.NPC.AI_108_DivingFlyer(), Terraria.NPC.AI_113_WindyBalloon(), Terraria.NPC.AI_123_Deerclops(), and Terraria.NPC.AI_125_ClumsySlimeBalloon().