10703 {
10704 float num = 0.2f;
10705 num -= (float)
numHits * 0.05f;
10706 if (num <= 0f)
10707 {
10708 return;
10709 }
10710 float num2 = (float)
dmg * num;
10711 if ((
int)
num2 <= 0 || Main.player[Main.myPlayer].lifeSteal <= 0f)
10712 {
10713 return;
10714 }
10715 Main.player[Main.myPlayer].lifeSteal -=
num2;
10717 {
10718 return;
10719 }
10722 for (
int i = 0;
i < 255;
i++)
10723 {
10724 if (Main.player[i].active && !Main.player[i].dead && ((!Main.player[
owner].hostile && !Main.player[i].hostile) || Main.player[
owner].team == Main.player[
i].team) &&
Distance(Main.player[i].Center) <= 3000f)
10725 {
10726 int num5 = Main.player[
i].statLifeMax2 - Main.player[
i].statLife;
10728 {
10731 }
10732 }
10733 }
10734 NewProjectile(
GetProjectileSource_OnHit(
victim, 15),
Position.X,
Position.Y, 0f, 0f, 298, 0, 0f,
owner,
num4,
num2);
10735 }
float Distance(Vector2 Other)
IEntitySource GetProjectileSource_OnHit(Entity victim, int projectileSourceId)
static int NewProjectile(IEntitySource spawnSource, Vector2 position, Vector2 velocity, int Type, int Damage, float KnockBack, int Owner=-1, float ai0=0f, float ai1=0f, float ai2=0f)