using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;
using Terraria;
using Terraria.ID;
using Terraria.ModLoader;
namespace MoreGunsMod.Projectiles
{
public class mm40 : ModProjectile
{
public override void SetDefaults()
{
projectile.name = "40mm Grenade";
projectile.width = 16;
projectile.height = 18;
projectile.aiStyle = 1;
projectile.friendly = true;
projectile.ranged = true;
projectile.damage = 20;
projectile.penetrate = 1;
projectile.timeLeft = 600;
projectile.alpha = 255;
projectile.extraUpdates = 1;
ProjectileID.Sets.TrailCacheLength[projectile.type] = 5;
ProjectileID.Sets.TrailingMode[projectile.type] = 0;
aiType = mod.ProjectileType("mm40");
}
public override void AI()
{
if (Main.rand.Next(3) == 0)
{
Dust.NewDust(projectile.position + projectile.velocity, projectile.width, projectile.height, DustID.Fire, projectile.velocity.X * 0.5f, projectile.velocity.Y * 0.5f);
}
}
public override void Kill(int timeLeft)
{
Main.PlaySound(2, (int)projectile.position.X, (int)projectile.position.Y, 14);
for (int num369 = 0; num369 < 20; num369++)
{
int num370 = Dust.NewDust(new Vector2(projectile.position.X, projectile.position.Y), projectile.width, projectile.height, 31, 0f, 0f, 100, default(Color), 1.5f);
Main.dust[num370].velocity *= 1.4f;
}
for (int num371 = 0; num371 < 10; num371++)
{
int num372 = Dust.NewDust(new Vector2(projectile.position.X, projectile.position.Y), projectile.width, projectile.height, 6, 0f, 0f, 100, default(Color), 2.5f);
Main.dust[num372].noGravity = true;
Main.dust[num372].velocity *= 5f;
num372 = Dust.NewDust(new Vector2(projectile.position.X, projectile.position.Y), projectile.width, projectile.height, 6, 0f, 0f, 100, default(Color), 1.5f);
Main.dust[num372].velocity *= 3f;
}
int num373 = Gore.NewGore(new Vector2(projectile.position.X, projectile.position.Y), default(Vector2), Main.rand.Next(61, 64));
Main.gore[num373].velocity *= 0.4f;
Gore gore85 = Main.gore[num373];
gore85.velocity.X = gore85.velocity.X + 1f;
Gore gore86 = Main.gore[num373];
gore86.velocity.Y = gore86.velocity.Y + 1f;
num373 = Gore.NewGore(new Vector2(projectile.position.X, projectile.position.Y), default(Vector2), Main.rand.Next(61, 64));
Main.gore[num373].velocity *= 0.4f;
Gore gore87 = Main.gore[num373];
gore87.velocity.X = gore87.velocity.X - 1f;
Gore gore88 = Main.gore[num373];
gore88.velocity.Y = gore88.velocity.Y + 1f;
num373 = Gore.NewGore(new Vector2(projectile.position.X, projectile.position.Y), default(Vector2), Main.rand.Next(61, 64));
Main.gore[num373].velocity *= 0.4f;
Gore gore89 = Main.gore[num373];
gore89.velocity.X = gore89.velocity.X + 1f;
Gore gore90 = Main.gore[num373];
gore90.velocity.Y = gore90.velocity.Y - 1f;
num373 = Gore.NewGore(new Vector2(projectile.position.X, projectile.position.Y), default(Vector2), Main.rand.Next(61, 64));
Main.gore[num373].velocity *= 0.4f;
Gore gore91 = Main.gore[num373];
gore91.velocity.X = gore91.velocity.X - 1f;
Gore gore92 = Main.gore[num373];
gore92.velocity.Y = gore92.velocity.Y - 1f;
}
}
}