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

◆ RerollVariation()

bool Terraria.NPC.RerollVariation ( )
inline

Definition at line 77786 of file NPC.cs.

77787 {
77788 if (!TownNPCProfiles.Instance.GetProfile(type, out var profile))
77789 {
77790 return false;
77791 }
77792 int num = townNpcVariationIndex;
77793 int num2 = 0;
77794 while (num2++ < 100 && townNpcVariationIndex == num)
77795 {
77796 townNpcVariationIndex = profile.RollVariation();
77797 }
77798 if (num == townNpcVariationIndex)
77799 {
77800 return false;
77801 }
77802 GivenName = profile.GetNameForVariant(this);
77803 life = lifeMax;
77804 if (Main.netMode != 1)
77805 {
77807 particleOrchestraSettings.PositionInWorld = base.Center;
77808 particleOrchestraSettings.MovementVector = velocity;
77811 }
77812 NetMessage.TrySendData(56, -1, -1, null, whoAmI);
77813 return true;
77814 }
Vector2 velocity
Definition Entity.cs:16
static void BroadcastParticleSpawn(ParticleOrchestraType type, ParticleOrchestraSettings settings)
int lifeMax
Definition NPC.cs:479
string GivenName
Definition NPC.cs:761
int townNpcVariationIndex
Definition NPC.cs:101
int type
Definition NPC.cs:445
int life
Definition NPC.cs:477

References Terraria.GameContent.Drawing.ParticleOrchestrator.BroadcastParticleSpawn(), Terraria.GameContent.TownNPCProfiles.Instance, Terraria.Main.netMode, Terraria.NetMessage.TrySendData(), and System.type.