20375 {
20377 {
20379 }
20381 {
20384 }
20386 {
20388 {
20390 for (
int i = 0;
i < 200;
i++)
20391 {
20394 {
20395 continue;
20396 }
20399 {
20402 bool crit = false;
20404 {
20406 }
20408 {
20410 }
20412 {
20413 crit = true;
20414 }
20417 {
20419 }
20421 {
20423 }
20424 if (
whoAmI == Main.myPlayer)
20425 {
20427 }
20430 velocity.X = -
num3 * 9;
20431 velocity.Y = -4f;
20434 }
20435 }
20436 }
20438 {
20439 velocity.X *= 0.95f;
20440 }
20441 }
20443 {
20445 for (
int j = 0;
j < 200;
j++)
20446 {
20449 {
20450 continue;
20451 }
20454 {
20456 {
20459 }
20462 bool crit2 =
false;
20464 {
20466 }
20468 {
20470 }
20472 {
20474 }
20477 {
20479 }
20481 {
20483 }
20484 if (
whoAmI == Main.myPlayer)
20485 {
20488 Main.projectile[
num7].Kill();
20489 }
20492 }
20493 }
20494 }
20496 {
20498 {
20500 }
20502 {
20504 }
20506 }
20508 {
20511 float num9 = 0.992f;
20513 float num11 = 0.96f;
20516 {
20517 for (
int k = 0;
k < 2;
k++)
20518 {
20519 int num13 = ((velocity.Y != 0f) ? Dust.NewDust(
new Vector2(
position.
X,
position.
Y + (
float)(
height / 2) - 8f),
width, 16, 31, 0f, 0f, 100,
default(
Color), 1.4f) : Dust.NewDust(
new Vector2(
position.
X,
position.
Y + (float)
height - 4f),
width, 8, 31, 0f, 0f, 100,
default(
Color), 1.4f));
20520 Main.dust[
num13].velocity *= 0.1f;
20521 Main.dust[
num13].scale *= 1f + (float)Main.rand.Next(20) * 0.01f;
20522 }
20523 }
20524 else if (
dash == 2)
20525 {
20526 for (
int l = 0;
l < 0;
l++)
20527 {
20528 int num14 = ((velocity.Y != 0f) ? Dust.NewDust(
new Vector2(
position.
X,
position.
Y + (
float)(
height / 2) - 8f),
width, 16, 31, 0f, 0f, 100,
default(
Color), 1.4f) : Dust.NewDust(
new Vector2(
position.
X,
position.
Y + (float)
height - 4f),
width, 8, 31, 0f, 0f, 100,
default(
Color), 1.4f));
20529 Main.dust[
num14].velocity *= 0.1f;
20530 Main.dust[
num14].scale *= 1f + (float)Main.rand.Next(20) * 0.01f;
20531 }
20535 }
20536 else if (
dash == 3)
20537 {
20538 for (
int m = 0;
m < 4;
m++)
20539 {
20541 Main.dust[
num15].velocity *= 0.1f;
20542 Main.dust[
num15].scale *= 1f + (float)Main.rand.Next(20) * 0.01f;
20544 Main.dust[
num15].noGravity =
true;
20545 if (Main.rand.Next(2) == 0)
20546 {
20547 Main.dust[
num15].fadeIn = 0.5f;
20548 }
20549 }
20554 }
20555 else if (
dash == 4)
20556 {
20557 for (
int n = 0;
n < 2;
n++)
20558 {
20560 Main.dust[
num16].velocity *= 0.1f;
20561 Main.dust[
num16].scale *= 1f + (float)Main.rand.Next(20) * 0.01f;
20562 Main.dust[
num16].noGravity =
true;
20563 if (Main.rand.Next(2) == 0)
20564 {
20565 Main.dust[
num16].fadeIn = 0.3f;
20566 }
20567 }
20571 }
20573 {
20575 {
20576 int type = Main.rand.NextFromList(
new short[3] { 68, 69, 70 });
20577 int num18 = ((velocity.Y != 0f) ? Dust.NewDust(
new Vector2(
position.
X,
position.
Y + (
float)(
height / 2) - 8f),
width, 16,
type, 0f, 0f, 100) : Dust.NewDust(
new Vector2(
position.
X,
position.
Y + (float)
height - 4f),
width, 8,
type, 0f, 0f, 100));
20578 Main.dust[
num18].velocity *= 0.2f;
20579 Main.dust[
num18].scale *= 1f + (float)Main.rand.Next(20) * 0.01f;
20580 Main.dust[
num18].fadeIn = 0.5f + (float)Main.rand.Next(20) * 0.01f;
20581 Main.dust[
num18].noGravity =
true;
20583 }
20584 }
20586 {
20587 return;
20588 }
20592 {
20593 velocity.X *=
num9;
20594 return;
20595 }
20597 {
20598 velocity.X *=
num11;
20599 return;
20600 }
20603 {
20604 velocity.X = 0f -
num10;
20605 }
20607 {
20608 velocity.X =
num10;
20609 }
20610 }
20611 else
20612 {
20614 {
20615 return;
20616 }
20618 {
20621 {
20622 velocity.X = 16.9f * (float)
dir;
20626 {
20627 velocity.X /= 2f;
20628 }
20631 {
20633 Main.dust[
num20].position.X += Main.rand.Next(-5, 6);
20634 Main.dust[
num20].position.Y += Main.rand.Next(-5, 6);
20635 Main.dust[
num20].velocity *= 0.2f;
20636 Main.dust[
num20].scale *= 1f + (float)Main.rand.Next(20) * 0.01f;
20637 }
20639 Main.gore[
num21].velocity.X = (float)Main.rand.Next(-50, 51) * 0.01f;
20640 Main.gore[
num21].velocity.Y = (float)Main.rand.Next(-50, 51) * 0.01f;
20641 Main.gore[
num21].velocity *= 0.4f;
20643 Main.gore[
num21].velocity.X = (float)Main.rand.Next(-50, 51) * 0.01f;
20644 Main.gore[
num21].velocity.Y = (float)Main.rand.Next(-50, 51) * 0.01f;
20645 Main.gore[
num21].velocity *= 0.4f;
20646 }
20647 }
20648 else if (
dash == 2)
20649 {
20652 {
20653 velocity.X = 14.5f * (float)
dir2;
20657 {
20658 velocity.X /= 2f;
20659 }
20663 {
20665 Main.dust[
num23].position.X += Main.rand.Next(-5, 6);
20666 Main.dust[
num23].position.Y += Main.rand.Next(-5, 6);
20667 Main.dust[
num23].velocity *= 0.2f;
20668 Main.dust[
num23].scale *= 1f + (float)Main.rand.Next(20) * 0.01f;
20669 }
20670 }
20671 }
20672 else if (
dash == 3)
20673 {
20676 {
20677 velocity.X = 21.9f * (float)
dir3;
20681 {
20682 velocity.X /= 2f;
20683 }
20686 {
20688 Main.dust[
num25].position.X += Main.rand.Next(-5, 6);
20689 Main.dust[
num25].position.Y += Main.rand.Next(-5, 6);
20690 Main.dust[
num25].velocity *= 0.2f;
20691 Main.dust[
num25].scale *= 1f + (float)Main.rand.Next(20) * 0.01f;
20693 Main.dust[
num25].noGravity =
true;
20694 Main.dust[
num25].fadeIn = 0.5f;
20695 }
20696 }
20697 }
20699 {
20700 return;
20701 }
20704 {
20705 velocity.X = 16.9f * (float)
dir4;
20709 {
20710 velocity.X /= 2f;
20711 }
20714 {
20715 int type2 = Main.rand.NextFromList(
new short[3] { 68, 69, 70 });
20717 Main.dust[
num27].position.X += Main.rand.Next(-5, 6);
20718 Main.dust[
num27].position.Y += Main.rand.Next(-5, 6);
20720 Main.dust[
num27].scale *= 1f + (float)Main.rand.Next(20) * 0.01f;
20721 Main.dust[
num27].fadeIn = 0.5f + (float)Main.rand.Next(20) * 0.01f;
20722 Main.dust[
num27].noGravity =
true;
20724 }
20725 }
20726 }
20727 }
static byte Max(byte val1, byte val2)
Vector2 DirectionTo(Vector2 Destination)
void AllowOpeningDoorsByVelocityAloneForATime(int timeInFramesToAllow)
static ArmorShaderDataSet Armor
DoorOpeningHelper doorHelper
IEntitySource GetProjectileSource_OnHit(Entity victim, int projectileSourceId)
void SolarDashStart(int dashDirection)
bool CanNPCBeHitByPlayerOrPlayerProjectile(NPC npc, Projectile projectile=null)
void ApplyDamageToNPC(NPC npc, int damage, float knockback, int direction, bool crit)
bool solarDashConsumedFlare
void StopVanityActions(bool multiplayerBroadcast=true)
void DoCommonDashHandle(out int dir, out bool dashing, DashStartAction dashStartAction=null)
void GiveImmuneTimeForCollisionAttack(int time)