13311    {
13314        if (Main.getGoodWorld)
13315        {
13316            num += 2f;
13317        }
13318        if ((!Main.player[
target].ZoneLihzhardTemple && !Main.player[
target].ZoneJungle) || (
double)Main.player[
target].Center.Y < Main.worldSurface * 16.0)
 
13319        {
13320            num *= 2f;
13321        }
13323        {
13328        }
13330        {
13332            if (Main.player[
target].dead)
 
13333            {
13335            }
13336        }
13338        {
13341            {
13343            }
13345        }
13346        bool flag = false;
13347        bool flag2 = 
false;
 
13348        bool flag3 = 
false;
 
13350        for (
int i = 0; 
i < 200; 
i++)
 
13351        {
13352            if (Main.npc[i].active && Main.npc[i].type == 246)
13353            {
13354                flag = true;
13355            }
13356            if (Main.npc[i].active && Main.npc[i].type == 247)
13357            {
13359            }
13360            if (Main.npc[i].active && Main.npc[i].type == 248)
13361            {
13363            }
13364        }
13366        if (Main.netMode != 1 && Main.getGoodWorld && 
velocity.
Y > 0f)
 
13367        {
13369            {
13370                for (
int k = (
int)(position.Y / 16f); (float)
k < (
position.
Y + (
float)
width) / 16f; 
k++)
 
13371                {
13372                    if (Main.tile[
j, 
k].type == 4)
 
13373                    {
13375                        if (Main.netMode == 2)
13376                        {
13377                            NetMessage.SendTileSquare(-1, 
j, 
k);
 
13378                        }
13379                    }
13380                }
13381            }
13382        }
13384        if (!Main.getGoodWorld)
13385        {
13387            {
13389                Main.dust[
num2].alpha += Main.rand.Next(100);
 
13390                Main.dust[
num2].velocity *= 0.2f;
 
13391                Main.dust[
num2].velocity.Y -= 0.5f + (float)Main.rand.Next(10) * 0.1f;
 
13392                Main.dust[
num2].fadeIn = 0.5f + (float)Main.rand.Next(10) * 0.1f;
 
13393                if (Main.rand.Next(10) == 0)
13394                {
13396                    if (Main.rand.Next(20) != 0)
13397                    {
13398                        Main.dust[
num2].noGravity = 
true;
 
13399                        Main.dust[
num2].scale *= 1f + (float)Main.rand.Next(10) * 0.1f;
 
13400                        Main.dust[
num2].velocity.Y -= 1f;
 
13401                    }
13402                }
13403            }
13405            {
13407                Main.dust[
num3].alpha += Main.rand.Next(100);
 
13408                Main.dust[
num3].velocity *= 0.2f;
 
13409                Main.dust[
num3].velocity.Y -= 0.5f + (float)Main.rand.Next(10) * 0.1f;
 
13410                Main.dust[
num3].fadeIn = 0.5f + (float)Main.rand.Next(10) * 0.1f;
 
13411                if (Main.rand.Next(10) == 0)
13412                {
13414                    if (Main.rand.Next(20) != 0)
13415                    {
13416                        Main.dust[
num3].noGravity = 
true;
 
13417                        Main.dust[
num3].scale *= 1f + (float)Main.rand.Next(10) * 0.1f;
 
13418                        Main.dust[
num3].velocity.Y -= 1f;
 
13419                    }
13420                }
13421            }
13422        }
13425        {
13427            {
13429            }
13431            {
13433            }
13434        }
13436        {
13438            {
13439                velocity.X *= 0.8f;
13442                {
13444                    {
13446                    }
13448                    {
13450                    }
13451                    if (!flag)
13452                    {
13454                    }
13456                    {
13458                    }
13460                    {
13462                    }
13464                    {
13466                    }
13468                    if (Main.getGoodWorld)
13469                    {
13471                    }
13472                }
13475                {
13478                }
13479                else if (
ai[1] == -1f)
 
13480                {
13485                    {
13486                        velocity.Y = -12.1f * (num + 9f) / 10f;
13487                        if ((double)velocity.Y < -19.1)
13488                        {
13489                            velocity.Y = -19.1f;
13490                        }
13491                    }
13492                    else
13493                    {
13494                        velocity.Y = -12.1f;
13495                    }
13498                }
13499            }
13500        }
13501        else if (
ai[0] == 1f)
 
13502        {
13504            {
13508                {
13509                    for (
int m = 0; 
m < 4; 
m++)
 
13510                    {
13512                        Main.dust[
num5].velocity *= 0.2f;
 
13513                    }
13515                    Main.gore[
num6].velocity *= 0.4f;
 
13516                }
13517            }
13518            else
13519            {
13522                {
13523                    velocity.X *= 0.9f;
13524                    if (
base.Bottom.Y < Main.player[
target].position.Y)
 
13525                    {
13526                        velocity.Y += 0.2f * (num + 1f) / 2f;
13527                    }
13528                }
13529                else
13530                {
13532                    {
13533                        velocity.X -= 0.2f;
13534                    }
13536                    {
13537                        velocity.X += 0.2f;
13538                    }
13541                    {
13543                    }
13545                    {
13547                    }
13549                    {
13551                    }
13552                    num7 *= (num + 1f) / 2f;
 
13554                    {
13555                        velocity.X = 0f - 
num7;
 
13556                    }
13558                    {
13560                    }
13561                }
13562            }
13563        }
13565        {
13567        }
13570        {
13573            {
13575            }
13576        }
13577    }
static double Abs(double value)
 
static void PlaySound(int type, Vector2 position, int style=1)
 
static readonly LegacySoundStyle Item14
 
void TargetClosest(bool faceTarget=true)
 
IEntitySource GetSpawnSourceForNPCFromNPCAI()
 
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)