1250 {
1251 float num = Main.rand.NextFloat() * ((float)
Math.
PI * 2f);
1252 float num2 = 1f;
1253 for (float num3 = 0f; num3 < 1f; num3 += 1f / num2)
1254 {
1255 Vector2 vector = settings.MovementVector * (0.3f + Main.rand.NextFloat() * 0.35f);
1256 Vector2 vector2 =
new Vector2(Main.rand.NextFloat() * 0.4f + 0.4f);
1257 float f = num + Main.rand.NextFloat() * ((float)
Math.
PI * 2f);
1258 float rotation = (float)
Math.
PI / 2f;
1259 Vector2 vector3 = 0.1f * vector2;
1260 float num4 = 60f;
1261 Vector2 vector4 = Main.rand.NextVector2Circular(8f, 8f) * vector2;
1263 prettySparkleParticle.Velocity = f.ToRotationVector2() * vector3 + vector;
1264 prettySparkleParticle.AccelerationPerFrame = f.ToRotationVector2() * -(vector3 / num4) - vector * 1f / 60f;
1265 prettySparkleParticle.ColorTint = Main.hslToRgb((0.6f + Main.rand.NextFloat() * 0.05f) % 1f, 1f, 0.4f + Main.rand.NextFloat() * 0.25f);
1266 prettySparkleParticle.ColorTint.A = 0;
1267 prettySparkleParticle.LocalPosition = settings.PositionInWorld + vector4;
1268 prettySparkleParticle.Rotation = rotation;
1269 prettySparkleParticle.Scale = vector2;
1270 Main.ParticleSystem_World_OverPlayers.
Add(prettySparkleParticle);
1272 prettySparkleParticle.Velocity = f.ToRotationVector2() * vector3 + vector;
1273 prettySparkleParticle.AccelerationPerFrame = f.ToRotationVector2() * -(vector3 / num4) - vector * 1f / 30f;
1274 prettySparkleParticle.ColorTint =
new Color(255, 255, 255, 0);
1275 prettySparkleParticle.LocalPosition = settings.PositionInWorld + vector4;
1276 prettySparkleParticle.Rotation = rotation;
1277 prettySparkleParticle.Scale = vector2 * 0.6f;
1278 Main.ParticleSystem_World_OverPlayers.Add(prettySparkleParticle);
1279 }
1280 for (
int i = 0;
i < 2;
i++)
1281 {
1282 Color newColor = Main.hslToRgb((0.59f + Main.rand.NextFloat() * 0.05f) % 1f, 1f, 0.4f + Main.rand.NextFloat() * 0.25f);
1283 int num5 = Dust.NewDust(settings.PositionInWorld, 0, 0, 267, 0f, 0f, 0, newColor);
1284 Main.dust[num5].velocity = Main.rand.NextVector2Circular(2f, 2f);
1285 Main.dust[num5].velocity += settings.MovementVector * (0.5f + 0.5f * Main.rand.NextFloat()) * 1.4f;
1286 Main.dust[num5].noGravity = true;
1287 Main.dust[num5].scale = 0.6f + Main.rand.NextFloat() * 2f;
1288 Main.dust[num5].position += Main.rand.NextVector2Circular(16f, 16f);
1289 if (num5 != 6000)
1290 {
1291 Dust dust = Dust.CloneDust(num5);
1292 dust.scale /= 2f;
1293 dust.fadeIn *= 0.75f;
1294 dust.color =
new Color(255, 255, 255, 255);
1295 }
1296 }
1297 }
static ParticlePool< PrettySparkleParticle > _poolPrettySparkle
static Vector2 Add(Vector2 value1, Vector2 value2)