Skip to content
This repository has been archived by the owner on Jan 24, 2019. It is now read-only.

Commit

Permalink
Merged Helper and Helper2
Browse files Browse the repository at this point in the history
  • Loading branch information
Jofairden committed Jul 11, 2017
1 parent 9705091 commit d80c547
Show file tree
Hide file tree
Showing 6 changed files with 42 additions and 82 deletions.
17 changes: 17 additions & 0 deletions Helper.cs
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,22 @@ public static int GetNearestPlayer(Vector2 Point, bool Alive = false)
return NearestPlayer;
}

public static int GetNearestPlayer(this NPC npc)
{
float NearestPlayerDist = 4815162342f;
int NearestPlayer = -1;
foreach (Player player in Main.player)
{
if (player.Distance(npc.Center) < NearestPlayerDist)
{
NearestPlayerDist = player.Distance(npc.Center);
NearestPlayer = player.whoAmI;
}
}
return NearestPlayer;
}


/// <summary>
/// *Используется для вычислиения инерции от точки до точки с заданой скоростью*
/// </summary>
Expand Down Expand Up @@ -296,6 +312,7 @@ public static void DropItem(Rectangle Area, params Drop[] Drops)
}

}

public struct Drop
{
public int Item; public int Count; public int Chance;
Expand Down
57 changes: 0 additions & 57 deletions Helper2.cs

This file was deleted.

2 changes: 1 addition & 1 deletion NPCs/AndasBoss/Andas.cs
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ public override void AI()
{
if ((int)(Main.time % 90) == 0)
{
Vector2 Velocity = Helper2.VelocityFPTP(npc.Center, new Vector2(Main.player[npc.target].Center.X, Main.player[npc.target].Center.Y + 20), 10);
Vector2 Velocity = Helper.VelocityFPTP(npc.Center, new Vector2(Main.player[npc.target].Center.X, Main.player[npc.target].Center.Y + 20), 10);
int Spread = 65;
float SpreadMult = 0.05f;
Velocity.X = Velocity.X + Main.rand.Next(-Spread, Spread + 1) * SpreadMult;
Expand Down
18 changes: 9 additions & 9 deletions NPCs/SoulofHope.cs
Original file line number Diff line number Diff line change
Expand Up @@ -159,14 +159,14 @@ public override void AI()
if (npc.target != -1 && !RunAway)
if (!Main.player[npc.target].active)
{
if (Helper2.GetNearestAlivePlayer(npc) == -1)
if (Helper.GetNearestAlivePlayer(npc) == -1)
RunAway = true;
else
{
if (Main.player[Helper2.GetNearestAlivePlayer(npc)].Distance(npc.Center) > 2500f)
if (Main.player[Helper.GetNearestAlivePlayer(npc)].Distance(npc.Center) > 2500f)
RunAway = true;
else
npc.target = Helper2.GetNearestAlivePlayer(npc);
npc.target = Helper.GetNearestAlivePlayer(npc);
}
}
if (Main.dayTime || RunAway || npc.localAI[3] == 1)
Expand All @@ -179,7 +179,7 @@ public override void AI()
npc.life += 11;
npc.aiStyle = 0;
npc.rotation = 0;
npc.velocity = Helper2.VelocityFPTP(npc.Center, new Vector2(npc.Center.X, npc.Center.Y - 4815162342), 30.0f);
npc.velocity = Helper.VelocityFPTP(npc.Center, new Vector2(npc.Center.X, npc.Center.Y - 4815162342), 30.0f);
CreateDust();
return;
}
Expand All @@ -195,7 +195,7 @@ public override void AI()
if (OnlyPower)
SetStage(true);
else
SetStage(Main.player[Helper2.GetNearestPlayer(npc)].Distance(npc.Center) <= DistantionToPower);
SetStage(Main.player[Helper.GetNearestPlayer(npc)].Distance(npc.Center) <= DistantionToPower);
SetRotation();
CreateDust();
TimeToShoot--;
Expand Down Expand Up @@ -226,7 +226,7 @@ void SetRotation()
if (Rotation != 0.0f)
{
Rotation -= (RotationSpeed * 2.0f);
Vector2 velocity = Helper2.VelocityFPTP(npc.Center, Helper2.RandomPositin(new Vector2(npc.Center.X - 250, npc.Center.Y - 250), new Vector2(npc.Center.X + 250, npc.Center.Y + 250)), PowerLaserSpeed);
Vector2 velocity = Helper.VelocityFPTP(npc.Center, Helper.RandomPositin(new Vector2(npc.Center.X - 250, npc.Center.Y - 250), new Vector2(npc.Center.X + 250, npc.Center.Y + 250)), PowerLaserSpeed);
int i = Projectile.NewProjectile(npc.Center.X, npc.Center.Y, velocity.X, velocity.Y, ShootType, PowerLaserDamage, PowerLaserKB);
Main.projectile[i].tileCollide = false;
}
Expand Down Expand Up @@ -257,10 +257,10 @@ void SetStage(bool stage)

void Shoot()
{
if (Helper2.GetNearestPlayer(npc) != -1)
if (Helper.GetNearestPlayer(npc) != -1)
{
npc.target = Helper2.GetNearestPlayer(npc);
Vector2 velocity = Helper2.VelocityFPTP(npc.Center, Main.player[npc.target].Center, (Power) ? PowerLaserSpeed : NormalLaserSpeed);
npc.target = Helper.GetNearestPlayer(npc);
Vector2 velocity = Helper.VelocityFPTP(npc.Center, Main.player[npc.target].Center, (Power) ? PowerLaserSpeed : NormalLaserSpeed);
int i = Projectile.NewProjectile(npc.Center.X, npc.Center.Y, velocity.X, velocity.Y, ShootType, (Power) ? PowerLaserDamage : NormalLaserDamage, (Power) ? PowerLaserKB : NormalLaserKB);
Main.projectile[i].tileCollide = false;
Main.projectile[i].friendly = false;
Expand Down
16 changes: 8 additions & 8 deletions NPCs/SoulofTrust.cs
Original file line number Diff line number Diff line change
Expand Up @@ -175,14 +175,14 @@ public override void AI()
if (npc.target != -1 && !RunAway) //если(пнс.цель не варно -1 И не убегать)
if (!Main.player[npc.target].active) //если (не мой.игрок[нпс.цель].активный)
{
if (Helper2.GetNearestAlivePlayer(npc) == -1) //если (Помощьник.ПолучитьКоординатыИгрока(нпс) присвоить -1)
if (Helper.GetNearestAlivePlayer(npc) == -1) //если (Помощьник.ПолучитьКоординатыИгрока(нпс) присвоить -1)
RunAway = true; //Убегает = да
else //или
{
if (Main.player[Helper2.GetNearestAlivePlayer(npc)].Distance(npc.Center) > 2500f) //если(Мой.игрок[Помощьник.ПолучитьКоординатыИгрока(нпс)].Дистанция(нпс.Центр) больше 2500фунтов)
if (Main.player[Helper.GetNearestAlivePlayer(npc)].Distance(npc.Center) > 2500f) //если(Мой.игрок[Помощьник.ПолучитьКоординатыИгрока(нпс)].Дистанция(нпс.Центр) больше 2500фунтов)
RunAway = true; //Убегает = да
else //или...
npc.target = Helper2.GetNearestAlivePlayer(npc); //нпс.цель равно Помощьник.ПолучитьКоординатыИгрока(нпс)
npc.target = Helper.GetNearestAlivePlayer(npc); //нпс.цель равно Помощьник.ПолучитьКоординатыИгрока(нпс)
}
}
if (Main.dayTime || RunAway || npc.localAI[3] == 1) //если(Мой.День или Убегать или нпс.местный ИИ 3 к 1)
Expand All @@ -195,7 +195,7 @@ public override void AI()
npc.life += 11; //нпс.жизнь прибавить
npc.aiStyle = 0; //нпс.ИИ Стиль - 0
npc.rotation = 0;
npc.velocity = Helper2.VelocityFPTP(npc.Center, new Vector2(npc.Center.X, npc.Center.Y - 4815162342), 30.0f); //нпс.поворот = Помощьник.ПоворотФПТП(нпс.Центр, новый Вектор2(нпс.Центр.X, нпс.Центр.Y - 4815162342))
npc.velocity = Helper.VelocityFPTP(npc.Center, new Vector2(npc.Center.X, npc.Center.Y - 4815162342), 30.0f); //нпс.поворот = Помощьник.ПоворотФПТП(нпс.Центр, новый Вектор2(нпс.Центр.X, нпс.Центр.Y - 4815162342))
CreateDust();
return;
}
Expand Down Expand Up @@ -231,12 +231,12 @@ public override void AI()
if (TimeToShoot <= 0 && Power)
{
TimeToShoot = PowerShootRate;
npc.target = Helper2.GetNearestPlayer(npc);
npc.target = Helper.GetNearestPlayer(npc);
if (npc.target != -1)
{
for (int a = 0; a < 5; a++)
{
Vector2 velocity = Helper2.VelocityFPTP(npc.Center, Main.player[npc.target].Center, PowerBulletSpeed);
Vector2 velocity = Helper.VelocityFPTP(npc.Center, Main.player[npc.target].Center, PowerBulletSpeed);
int spread = 65;
float spreadMult = 0.05f;
velocity.X = velocity.X + Main.rand.Next(-spread, spread + 1) * spreadMult;
Expand Down Expand Up @@ -279,10 +279,10 @@ void SetStage(bool stage)

void Shoot()
{
npc.target = Helper2.GetNearestPlayer(npc);
npc.target = Helper.GetNearestPlayer(npc);
if (npc.target != -1)
{
Vector2 velocity = Helper2.VelocityFPTP(npc.Center, Main.player[npc.target].Center, NormalBulletSpeed);
Vector2 velocity = Helper.VelocityFPTP(npc.Center, Main.player[npc.target].Center, NormalBulletSpeed);
int spread = 95;
float spreadMult = 0.075f;
for (int l = 0; l < 2; l++)
Expand Down
14 changes: 7 additions & 7 deletions NPCs/SoulofTruth.cs
Original file line number Diff line number Diff line change
Expand Up @@ -158,14 +158,14 @@ public override void AI()
if (npc.target != -1 && !RunAway)
if (!Main.player[npc.target].active)
{
if (Helper2.GetNearestAlivePlayer(npc) == -1)
if (Helper.GetNearestAlivePlayer(npc) == -1)
RunAway = true;
else
{
if (Main.player[Helper2.GetNearestAlivePlayer(npc)].Distance(npc.Center) > 2500f)
if (Main.player[Helper.GetNearestAlivePlayer(npc)].Distance(npc.Center) > 2500f)
RunAway = true;
else
npc.target = Helper2.GetNearestAlivePlayer(npc);
npc.target = Helper.GetNearestAlivePlayer(npc);
}
}
if (Main.dayTime || RunAway || npc.localAI[3] == 1)
Expand All @@ -178,7 +178,7 @@ public override void AI()
npc.life += 11;
npc.aiStyle = 0;
npc.rotation = 0;
npc.velocity = Helper2.VelocityFPTP(npc.Center, new Vector2(npc.Center.X, npc.Center.Y - 4815162342), 30.0f);
npc.velocity = Helper.VelocityFPTP(npc.Center, new Vector2(npc.Center.X, npc.Center.Y - 4815162342), 30.0f);
CreateDust();
return;
}
Expand All @@ -192,7 +192,7 @@ public override void AI()
OnlyPower = true;
}
if (!OnlyPower)
SetStage(!(Main.player[Helper2.GetNearestPlayer(npc)].Distance(npc.Center) <= DistantionToPower));
SetStage(!(Main.player[npc.GetNearestPlayer()].Distance(npc.Center) <= DistantionToPower));
else
SetStage(true);
SetRotation();
Expand Down Expand Up @@ -246,10 +246,10 @@ void SetStage(bool stage)

void Shoot()
{
npc.target = Helper2.GetNearestPlayer(npc);
npc.target = npc.GetNearestPlayer();
if (npc.target != -1)
{
Vector2 velocity = Helper2.VelocityFPTP(npc.Center, new Vector2(Main.player[npc.target].Center.X, Main.player[npc.target].Center.Y + 20), 0.0f);
Vector2 velocity = Helper.VelocityFPTP(npc.Center, new Vector2(Main.player[npc.target].Center.X, Main.player[npc.target].Center.Y + 20), 0.0f);
int spread = 65;
float spreadMult = 0.05f;
for (int l = 0; l < 2; l++)
Expand Down

0 comments on commit d80c547

Please sign in to comment.