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

◆ DamageVar()

static int Terraria.Main.DamageVar ( float dmg,
float luck = 0f )
inlinestatic

Definition at line 62870 of file Main.cs.

62871 {
62872 float num = dmg * (1f + (float)rand.Next(-15, 16) * 0.01f);
62873 if (luck > 0f)
62874 {
62875 if (rand.NextFloat() < luck)
62876 {
62877 float num2 = dmg * (1f + (float)rand.Next(-15, 16) * 0.01f);
62878 if (num2 > num)
62879 {
62880 num = num2;
62881 }
62882 }
62883 }
62884 else if (luck < 0f && rand.NextFloat() < 0f - luck)
62885 {
62886 float num3 = dmg * (1f + (float)rand.Next(-15, 16) * 0.01f);
62887 if (num3 < num)
62888 {
62889 num = num3;
62890 }
62891 }
62892 return (int)Math.Round(num);
62893 }
static decimal Round(decimal d)
Definition Math.cs:1096
static UnifiedRandom rand
Definition Main.cs:1387

References Terraria.Main.rand, and System.Math.Round().

Referenced by Terraria.Player.ApplyTouchDamage(), Terraria.NPC.BeHurtByOtherNPC(), Terraria.Projectile.BombsHurtPlayers(), Terraria.Projectile.Damage(), Terraria.Player.GetMinecartDamage(), Terraria.Player.ItemCheck_MeleeHitPVP(), Terraria.Player.ItemCheck_UseMiningTools_ActuallyUseMiningTool(), Terraria.Player.ProcessHitAgainstNPC(), and Terraria.Player.Update_NPCCollision().