44268 {
44269
44270
44271
44272
44273
44274
44275
44276
44277
44278
44279
44280
44281
44282
44283
44284
44285
44286
44287
44288
44289
44290
44291
44292
44293
44294
44295
44296
44297
44298
44299
44300
44301
44302
44303
44304
44305
44306
44307
44308
44309
44310
44311
44312
44313
44314
44315
44316
44317
44318
44319
44320
44321
44322
44323
44324
44325
44326
44327
44328
44329
44330
44331
44332
44333
44334
44335
44336
44337
44338
44339
44340
44341
44342
44343
44344
44345
44346
44347
44348
44349
44350
44351
44352
44353
44354
44355
44356
44357
44358
44359
44360
44361
44362
44363
44364
44365
44366
44367
44368
44370 if ((int)Main.timeForVisualEffects % 120 == 0)
44371 {
44373 }
44374 if (!player.active)
44375 {
44377 return;
44378 }
44383 {
44384 if (player.dead)
44385 {
44386 player.stardustDragon = false;
44387 }
44388 if (player.stardustDragon)
44389 {
44391 }
44393 if (Main.rand.Next(30) == 0)
44394 {
44396 Main.dust[
num21].noGravity =
true;
44397 Main.dust[
num21].fadeIn = 2
f;
44398 Point point = Main.dust[
num21].position.ToTileCoordinates();
44399 if (
WorldGen.InWorld(point.X, point.Y, 5) &&
WorldGen.SolidTile(point.X, point.Y))
44400 {
44401 Main.dust[
num21].noLight =
true;
44402 }
44403 }
44404 }
44407 {
44408 Vector2
center = player.Center;
44413 {
44416 }
44419 {
44422 {
44424 }
44425 else
44426 {
44428 }
44429 }
44431 {
44432 for (int i = 0; i < 200; i++)
44433 {
44436 {
44439 }
44440 }
44441 }
44443 {
44446 (vector.X > 0
f).ToDirectionInt();
44447 (vector.Y > 0
f).ToDirectionInt();
44448 float num25 = 0.4f;
44449 if (((Vector2)(
ref vector)).Length() < 600
f)
44450 {
44452 }
44453 if (((Vector2)(
ref vector)).Length() < 300
f)
44454 {
44456 }
44460 {
44463 {
44465 }
44466 }
44469 {
44471 }
44472 }
44473 else
44474 {
44475 float num11 = 0.2f;
44478 {
44480 }
44482 {
44484 }
44486 {
44488 {
44490 }
44492 {
44494 }
44495 }
44497 {
44499 }
44501 {
44502 velocity.Y -= 0.1f;
44503 }
44506 {
44508 }
44509 }
44514 {
44516 }
44523 {
44524 for (
int j = 0;
j < 2;
j++)
44525 {
44527 Main.dust[
num14].noGravity =
true;
44528 Main.dust[
num14].noLight =
true;
44529 }
44532 {
44534 }
44535 }
44536 }
44537 else
44538 {
44539 bool flag2 =
false;
44540 Vector2
vector3 = Vector2.Zero;
44546 {
44549 }
44551 if (Main.projectile.IndexInRange(
byUUID))
44552 {
44553 Projectile projectile = Main.projectile[
byUUID];
44554 if (
flag && projectile.active && (projectile.type == 625 || projectile.type == 626 || projectile.type == 627))
44555 {
44558 _ = projectile.velocity;
44559 num15 = projectile.rotation;
44562 _ = projectile.alpha;
44563 projectile.localAI[0] =
localAI[0] + 1
f;
44564 if (projectile.type != 625)
44565 {
44566 projectile.localAI[1] =
whoAmI;
44567 }
44568 if (
owner == Main.myPlayer &&
type == 628 && projectile.type == 625)
44569 {
44570 projectile.Kill();
44572 return;
44573 }
44574 }
44575 }
44577 {
44578 for (
int k = 0;
k < 1000;
k++)
44579 {
44582 {
44586 }
44587 }
44588 return;
44589 }
44591 {
44592 for (
int l = 0;
l < 2;
l++)
44593 {
44595 Main.dust[
num18].noGravity =
true;
44596 Main.dust[
num18].noLight =
true;
44597 }
44598 }
44601 {
44603 }
44607 {
44613 }
44620 {
44622 }
44624 }
44627 }
int whoAmI
The index of this Entity within its specific array. These arrays track the entities in the world....
Vector2 velocity
The velocity of this Entity in world coordinates per tick.
float Distance(Vector2 Other)
Vector2 position
The position of this Entity in world coordinates.
int width
The width of this Entity's hitbox, in pixels.
bool active
If true, the Entity actually exists within the game world. Within the specific entity array,...
int height
The height of this Entity's hitbox, in pixels.
static bool[] StardustDragon
int owner
The index of the player who owns this projectile. In Multiplayer, Clients "own" projectiles that they...
float[] ai
An array with 3 slots used for any sort of data storage, which is occasionally synced to the server....
bool netUpdate
Set manually to true in M:Terraria.ModLoader.ModProjectile.AI once to make it sync its current F:Terr...
int alpha
How transparent to draw this projectile. 0 to 255. 255 is completely transparent. ExampleBulletsets...
float[] localAI
Acts like F:Terraria.Projectile.ai, but does not sync to the server. Many vanilla T:Terraria....
int type
The Projectile ID of this projectile. The Projectile ID is a unique number assigned to each Projectil...
int timeLeft
Time in ticks before this projectile will naturally despawn. Each update timeLeft is decreased by 1...
float rotation
Rotation of the projectile. Radians not Degrees. Use T:Microsoft.Xna.Framework.MathHelper if you want...
static int GetByUUID(int owner, float uuid)
NPC OwnerMinionAttackTargetNPC
float scale
Scales how large the projectile will be drawn. Will also affect the hitbox (F:Terraria....