TModLoader v1.4.4.9
TModLoader source code documentation
Loading...
Searching...
No Matches

◆ Spawn()

void Terraria.Player.Spawn ( PlayerSpawnContext context)
inline

Definition at line 36486 of file Player.cs.

36487 {
36488 //IL_010d: Unknown result type (might be due to invalid IL or missing references)
36489 //IL_0112: Unknown result type (might be due to invalid IL or missing references)
36490 //IL_0118: Unknown result type (might be due to invalid IL or missing references)
36491 //IL_011d: Unknown result type (might be due to invalid IL or missing references)
36492 //IL_0123: Unknown result type (might be due to invalid IL or missing references)
36493 //IL_0128: Unknown result type (might be due to invalid IL or missing references)
36494 //IL_01ec: Unknown result type (might be due to invalid IL or missing references)
36495 //IL_01f1: Unknown result type (might be due to invalid IL or missing references)
36496 //IL_02a3: Unknown result type (might be due to invalid IL or missing references)
36497 //IL_02a9: Unknown result type (might be due to invalid IL or missing references)
36498 //IL_02ae: Unknown result type (might be due to invalid IL or missing references)
36499 //IL_02b3: Unknown result type (might be due to invalid IL or missing references)
36500 //IL_033e: Unknown result type (might be due to invalid IL or missing references)
36501 //IL_0340: Unknown result type (might be due to invalid IL or missing references)
36502 //IL_0356: Unknown result type (might be due to invalid IL or missing references)
36503 //IL_035b: Unknown result type (might be due to invalid IL or missing references)
36504 //IL_0397: Unknown result type (might be due to invalid IL or missing references)
36505 //IL_039c: Unknown result type (might be due to invalid IL or missing references)
36506 Main.LocalPlayer.creativeInterface = false;
36508 bool flag = false;
36509 if (context == PlayerSpawnContext.SpawningIntoWorld)
36510 {
36511 if (Main.netMode == 0 && unlockedBiomeTorches)
36512 {
36513 NPC nPC = new NPC();
36514 nPC.SetDefaults(664);
36515 Main.BestiaryTracker.Kills.RegisterKill(nPC);
36516 }
36517 if (dead)
36518 {
36520 if (dead)
36521 {
36522 flag = true;
36523 }
36524 }
36525 }
36527 if (whoAmI == Main.myPlayer)
36528 {
36529 Main.NotifyOfEvent(GameNotificationType.SpawnOrDeath);
36530 }
36531 if (whoAmI == Main.myPlayer)
36532 {
36533 if (Main.mapTime < 5)
36534 {
36535 Main.mapTime = 5;
36536 }
36537 Main.instantBGTransitionCounter = 10;
36538 FindSpawn();
36539 if (!CheckSpawn(SpawnX, SpawnY))
36540 {
36541 SpawnX = -1;
36542 SpawnY = -1;
36543 }
36544 Main.maxQ = true;
36545 NPC.ResetNetOffsets();
36546 }
36547 if (Main.netMode == 1 && whoAmI == Main.myPlayer)
36548 {
36549 NetMessage.SendData(12, -1, -1, null, Main.myPlayer, (int)(byte)context);
36550 }
36551 headPosition = Vector2.Zero;
36552 bodyPosition = Vector2.Zero;
36553 legPosition = Vector2.Zero;
36554 headRotation = 0f;
36555 bodyRotation = 0f;
36556 legRotation = 0f;
36558 lavaTime = lavaMax;
36559 if (!flag)
36560 {
36561 if (statLife <= 0)
36562 {
36563 int num = statLifeMax2 / 2;
36564 statLife = 100;
36565 if (num > statLife)
36566 {
36567 statLife = num;
36568 }
36569 breath = breathMax;
36570 if (spawnMax)
36571 {
36574 }
36575 }
36576 immune = true;
36577 if (dead)
36578 {
36579 PlayerLoader.OnRespawn(this);
36580 }
36581 dead = false;
36582 immuneTime = 0;
36583 }
36584 active = true;
36585 Vector2 value = position;
36586 if (SpawnX >= 0 && SpawnY >= 0)
36587 {
36588 _ = SpawnX;
36589 _ = SpawnY;
36591 }
36592 else
36593 {
36595 }
36596 wet = false;
36597 wetCount = 0;
36598 lavaWet = false;
36599 fallStart = (int)(position.Y / 16f);
36601 velocity.X = 0f;
36602 velocity.Y = 0f;
36604 for (int i = 0; i < 3; i++)
36605 {
36607 }
36609 SetTalkNPC(-1);
36610 if (whoAmI == Main.myPlayer)
36611 {
36612 Main.npcChatCornerItem = 0;
36613 }
36614 if (!flag)
36615 {
36616 if (pvpDeath)
36617 {
36618 pvpDeath = false;
36619 immuneTime = 300;
36621 }
36622 else if (context == PlayerSpawnContext.ReviveFromDeath)
36623 {
36624 immuneTime = 180;
36625 }
36626 else
36627 {
36628 immuneTime = 60;
36629 }
36630 if (immuneTime > 0 && !hostile)
36631 {
36632 immuneNoBlink = true;
36633 }
36634 }
36635 if (whoAmI == Main.myPlayer)
36636 {
36637 float num2 = Vector2.Distance(value, position);
36638 Vector2 val = new Vector2((float)Main.screenWidth, (float)Main.screenHeight);
36639 bool flag2 = num2 < ((Vector2)(ref val)).Length() / 2f + 100f;
36640 if (flag2)
36641 {
36642 Main.SetCameraLerp(0.1f, 0);
36643 flag2 = true;
36644 }
36645 else
36646 {
36647 Main.BlackFadeIn = 255;
36648 Lighting.Clear();
36649 Main.screenLastPosition = Main.screenPosition;
36650 Main.instantBGTransitionCounter = 10;
36651 }
36652 if (!flag2)
36653 {
36654 Main.renderNow = true;
36655 }
36656 if (Main.netMode == 1)
36657 {
36658 Netplay.AddCurrentServerToRecentList();
36659 }
36660 if (!flag2)
36661 {
36662 Main.screenPosition.X = position.X + (float)(width / 2) - (float)(Main.screenWidth / 2);
36663 Main.screenPosition.Y = position.Y + (float)(height / 2) - (float)(Main.screenHeight / 2);
36665 }
36666 }
36667 if (flag)
36668 {
36669 immuneAlpha = 255;
36670 }
36672 if (whoAmI == Main.myPlayer && context == PlayerSpawnContext.ReviveFromDeath && difficulty == 3)
36673 {
36675 }
36676 if (whoAmI == Main.myPlayer && context == PlayerSpawnContext.SpawningIntoWorld)
36677 {
36678 Main.ReleaseHostAndPlayProcess();
36679 RefreshItems();
36681 Main.LocalGolfState.SetScoreTime();
36682 Main.ActivePlayerFileData.StartPlayTimer();
36683 Hooks.EnterWorld(whoAmI);
36684 }
36685 }
bool wet
The Entity is currently in water. Projectile: Affects movement speed and some projectiles die when ...
Definition Entity.cs:57
Vector2 oldPosition
Definition Entity.cs:35
int whoAmI
The index of this Entity within its specific array. These arrays track the entities in the world....
Definition Entity.cs:16
Vector2 position
The position of this Entity in world coordinates.
Definition Entity.cs:28
byte wetCount
Definition Entity.cs:63
int width
The width of this Entity's hitbox, in pixels.
Definition Entity.cs:46
bool active
If true, the Entity actually exists within the game world. Within the specific entity array,...
Definition Entity.cs:21
int height
The height of this Entity's hitbox, in pixels.
Definition Entity.cs:51
static void OnRespawn(Player player)
This is where all ModPlayer hooks are gathered and called.
void SetTalkNPC(int npcIndex, bool fromNet=false)
Definition Player.cs:4880
int statLifeMax2
The maximum health this player can have, adjusted by buffs and equipment.
Definition Player.cs:2092
int statManaMax2
The maximum mana this player can have, adjusted by buffs and equipment.
Definition Player.cs:2122
RabbitOrderFrameHelper rabbitOrderFrame
Definition Player.cs:2044
void UpdateGraveyard(bool now=false)
Definition Player.cs:14729
float bodyRotation
Definition Player.cs:1785
bool unlockedBiomeTorches
Definition Player.cs:2241
Vector2 bodyPosition
Definition Player.cs:1791
int statLife
The current health of this player. Capped at F:Terraria.Player.statLifeMax2. If you increase this v...
Definition Player.cs:2102
float legRotation
Definition Player.cs:1787
void Spawn_SetPosition(int floorX, int floorY)
Definition Player.cs:36812
void RefreshItems(bool onlyIfVariantChanged=true)
Definition Player.cs:34051
static bool CheckSpawn(int x, int y)
Definition Player.cs:55231
void AutoFinchStaff()
Definition Player.cs:36476
int _funkytownAchievementCheckCooldown
Definition Player.cs:3153
Vector2 legPosition
Definition Player.cs:1793
void ForceUpdateBiomes()
Definition Player.cs:14759
void SetPlayerDataToOutOfClassFields()
Definition Player.cs:55637
bool immuneNoBlink
Definition Player.cs:1584
float headRotation
Definition Player.cs:1783
void StopVanityActions(bool multiplayerBroadcast=true)
Definition Player.cs:31655
void FindSpawn()
Definition Player.cs:55276
void UpdateSocialShadow()
Definition Player.cs:14598
Vector2 headPosition
Definition Player.cs:1789
int statLifeMax
The maximum health this player can have without adjustment. You should not modify this value....
Definition Player.cs:2087
Vector2 BlehOldPositionFixer
Definition Player.cs:3586
void Spawn_SetPositionAtWorldSpawn()
Definition Player.cs:36732
int statMana
The current mana of this player. Capped at F:Terraria.Player.statManaMax2. If you increase this val...
Definition Player.cs:2111
static void AdjustRespawnTimerForWorldJoining(Player newPlayer)
Definition Player.cs:56401
void ResetAdvancedShadows()
Definition Player.cs:4857

References Terraria.Player._funkytownAchievementCheckCooldown, Terraria.Entity.active, Terraria.Main.ActivePlayerFileData, Terraria.Netplay.AddCurrentServerToRecentList(), Terraria.Player.AdjustRespawnTimerForWorldJoining(), Terraria.Player.AutoFinchStaff(), Terraria.Main.BestiaryTracker, Terraria.Player.BlehOldPositionFixer, Terraria.Player.bodyPosition, Terraria.Player.bodyRotation, Terraria.Player.breath, Terraria.Player.breathMax, Terraria.Player.CheckSpawn(), Terraria.Lighting.Clear(), Terraria.Player.dead, Terraria.Player.difficulty, Terraria.Player.Hooks.EnterWorld(), Terraria.Player.fallStart, Terraria.Player.fallStart2, Terraria.Player.FindSpawn(), Terraria.Player.ForceUpdateBiomes(), Terraria.Player.headPosition, Terraria.Player.headRotation, Terraria.Entity.height, Terraria.Player.hostile, Terraria.Player.immune, Terraria.Player.immuneAlpha, Terraria.Player.immuneNoBlink, Terraria.Player.immuneTime, Terraria.Player.lavaMax, Terraria.Player.lavaTime, Terraria.Entity.lavaWet, Terraria.Player.legPosition, Terraria.Player.legRotation, Terraria.Main.LocalGolfState, Terraria.Main.mapTime, Terraria.Main.myPlayer, Terraria.Main.netMode, Terraria.Main.NotifyOfEvent(), Terraria.Enums.NPC, Terraria.Entity.oldPosition, Terraria.ModLoader.PlayerLoader.OnRespawn(), Terraria.Entity.position, Terraria.Player.pvpDeath, Terraria.Player.rabbitOrderFrame, Terraria.Player.RefreshItems(), Terraria.Main.ReleaseHostAndPlayProcess(), Terraria.Player.RabbitOrderFrameHelper.Reset(), Terraria.Player.ResetAdvancedShadows(), Terraria.NPC.ResetNetOffsets(), Terraria.Main.screenHeight, Terraria.Main.screenPosition, Terraria.Main.screenWidth, Terraria.NetMessage.SendData(), Terraria.Main.SetCameraLerp(), Terraria.Player.SetPlayerDataToOutOfClassFields(), Terraria.Player.SetTalkNPC(), Terraria.Player.Spawn_SetPosition(), Terraria.Player.Spawn_SetPositionAtWorldSpawn(), Terraria.Player.spawnMax, Terraria.Player.SpawnX, Terraria.Player.SpawnY, Terraria.Player.statLife, Terraria.Player.statLifeMax, Terraria.Player.statLifeMax2, Terraria.Player.statMana, Terraria.Player.statManaMax2, Terraria.Player.StopVanityActions(), Terraria.Player.unlockedBiomeTorches, Terraria.Player.UpdateGraveyard(), Terraria.Player.UpdateSocialShadow(), Terraria.Entity.wet, Terraria.Entity.wetCount, Terraria.Entity.whoAmI, and Terraria.Entity.width.

Referenced by Terraria.Player.DoPotionOfReturnTeleportationAndSetTheComebackPoint(), Terraria.Player.ItemCheck_Inner(), and Terraria.Player.UpdateDead().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: