Terraria.Player.UpdateArmorSets C# (CSharp) Method

UpdateArmorSets() public method

public UpdateArmorSets ( int i ) : void
i int
return void
        public void UpdateArmorSets(int i)
        {
            this.setBonus = "";
            if (this.body == 67 && this.legs == 56 && (this.head >= 103 && this.head <= 105))
            {
                this.setBonus = Lang.setBonus(31, false);
                this.shroomiteStealth = true;
            }
            if (this.head == 52 && this.body == 32 && this.legs == 31 || this.head == 53 && this.body == 33 && this.legs == 32 || (this.head == 54 && this.body == 34 && this.legs == 33 || this.head == 55 && this.body == 35 && this.legs == 34) || (this.head == 70 && this.body == 46 && this.legs == 42 || this.head == 71 && this.body == 47 && this.legs == 43 || (this.head == 166 && this.body == 173 && this.legs == 108 || this.head == 167 && this.body == 174 && this.legs == 109)))
            {
                this.setBonus = Lang.setBonus(20, false);
                ++this.statDefense;
            }
            if (this.head == 1 && this.body == 1 && this.legs == 1 || (this.head == 72 || this.head == 2) && (this.body == 2 && this.legs == 2) || this.head == 47 && this.body == 28 && this.legs == 27)
            {
                this.setBonus = Lang.setBonus(0, false);
                this.statDefense += 2;
            }
            if (this.head == 3 && this.body == 3 && this.legs == 3 || (this.head == 73 || this.head == 4) && (this.body == 4 && this.legs == 4) || (this.head == 48 && this.body == 29 && this.legs == 28 || this.head == 49 && this.body == 30 && this.legs == 29))
            {
                this.setBonus = Lang.setBonus(1, false);
                this.statDefense += 3;
            }
            if (this.head == 188 && this.body == 189 && this.legs == 129)
            {
                this.setBonus = Lang.setBonus(42, false);
                this.thrownCost50 = true;
            }
            if (this.head == 50 && this.body == 31 && this.legs == 30)
            {
                this.setBonus = Lang.setBonus(32, false);
                this.statDefense += 4;
            }
            if (this.head == 112 && this.body == 75 && this.legs == 64)
            {
                this.setBonus = Lang.setBonus(33, false);
                this.meleeDamage += 0.1f;
                this.magicDamage += 0.1f;
                this.rangedDamage += 0.1f;
                this.thrownDamage += 0.1f;
            }
            if (this.head == 22 && this.body == 14 && this.legs == 14)
            {
                this.thrownCost33 = true;
                this.setBonus = Lang.setBonus(41, false);
            }
            if (this.head == 157 && this.body == 105 && this.legs == 98)
            {
                int num1 = 0;
                this.setBonus = Lang.setBonus(38, false);
                this.beetleOffense = true;
                this.beetleCounter -= 3f;
                this.beetleCounter -= (float)(this.beetleCountdown / 10);
                ++this.beetleCountdown;
                if ((double)this.beetleCounter < 0.0)
                    this.beetleCounter = 0.0f;
                int num2 = 400;
                int num3 = 1200;
                int num4 = 4600;
                if ((double)this.beetleCounter > (double)(num2 + num3 + num4 + num3))
                    this.beetleCounter = (float)(num2 + num3 + num4 + num3);
                if ((double)this.beetleCounter > (double)(num2 + num3 + num4))
                {
                    this.AddBuff(100, 5, false);
                    num1 = 3;
                }
                else if ((double)this.beetleCounter > (double)(num2 + num3))
                {
                    this.AddBuff(99, 5, false);
                    num1 = 2;
                }
                else if ((double)this.beetleCounter > (double)num2)
                {
                    this.AddBuff(98, 5, false);
                    num1 = 1;
                }
                if (num1 < this.beetleOrbs)
                    this.beetleCountdown = 0;
                else if (num1 > this.beetleOrbs)
                    this.beetleCounter += 200f;
                if (num1 != this.beetleOrbs && this.beetleOrbs > 0)
                {
                    for (int b = 0; b < 22; ++b)
                    {
                        if (this.buffType[b] >= 98 && this.buffType[b] <= 100 && this.buffType[b] != 97 + num1)
                            this.DelBuff(b);
                    }
                }
            }
            else if (this.head == 157 && this.body == 106 && this.legs == 98)
            {
                this.setBonus = Lang.setBonus(37, false);
                this.beetleDefense = true;
                ++this.beetleCounter;
                int num = 180;
                if ((double)this.beetleCounter >= (double)num)
                {
                    if (this.beetleOrbs > 0 && this.beetleOrbs < 3)
                    {
                        for (int b = 0; b < 22; ++b)
                        {
                            if (this.buffType[b] >= 95 && this.buffType[b] <= 96)
                                this.DelBuff(b);
                        }
                    }
                    if (this.beetleOrbs < 3)
                    {
                        this.AddBuff(95 + this.beetleOrbs, 5, false);
                        this.beetleCounter = 0.0f;
                    }
                    else
                        this.beetleCounter = (float)num;
                }
            }
            if (!this.beetleDefense && !this.beetleOffense)
            {
                this.beetleCounter = 0.0f;
            }
            else
            {
                ++this.beetleFrameCounter;
                if (this.beetleFrameCounter >= 1)
                {
                    this.beetleFrameCounter = 0;
                    ++this.beetleFrame;
                    if (this.beetleFrame > 2)
                        this.beetleFrame = 0;
                }
                for (int index = this.beetleOrbs; index < 3; ++index)
                {
                    this.beetlePos[index].X = 0.0f;
                    this.beetlePos[index].Y = 0.0f;
                }
                for (int index = 0; index < this.beetleOrbs; ++index)
                {
                    this.beetlePos[index] += this.beetleVel[index];
                    this.beetleVel[index].X += (float)Main.rand.Next(-100, 101) * 0.005f;
                    this.beetleVel[index].Y += (float)Main.rand.Next(-100, 101) * 0.005f;
                    float num1 = this.beetlePos[index].X;
                    float num2 = this.beetlePos[index].Y;
                    float num3 = (float)Math.Sqrt((double)num1 * (double)num1 + (double)num2 * (double)num2);
                    if ((double)num3 > 100.0)
                    {
                        float num4 = 20f / num3;
                        float num5 = num1 * -num4;
                        float num6 = num2 * -num4;
                        int num7 = 10;
                        this.beetleVel[index].X = (this.beetleVel[index].X * (float)(num7 - 1) + num5) / (float)num7;
                        this.beetleVel[index].Y = (this.beetleVel[index].Y * (float)(num7 - 1) + num6) / (float)num7;
                    }
                    else if ((double)num3 > 30.0)
                    {
                        float num4 = 10f / num3;
                        float num5 = num1 * -num4;
                        float num6 = num2 * -num4;
                        int num7 = 20;
                        this.beetleVel[index].X = (this.beetleVel[index].X * (float)(num7 - 1) + num5) / (float)num7;
                        this.beetleVel[index].Y = (this.beetleVel[index].Y * (float)(num7 - 1) + num6) / (float)num7;
                    }
                    float num8 = this.beetleVel[index].X;
                    float num9 = this.beetleVel[index].Y;
                    if (Math.Sqrt((double)num8 * (double)num8 + (double)num9 * (double)num9) > 2.0)
                        this.beetleVel[index] *= 0.9f;
                    this.beetlePos[index] -= this.velocity * 0.25f;
                }
            }
            if (this.head == 14 && (this.body >= 58 && this.body <= 63 || this.body == 167))
            {
                this.setBonus = Lang.setBonus(28, false);
                this.magicCrit += 10;
            }
            if (this.head == 159 && (this.body >= 58 && this.body <= 63 || this.body == 167))
            {
                this.setBonus = Lang.setBonus(36, false);
                this.statManaMax2 += 60;
            }
            if ((this.head == 5 || this.head == 74) && (this.body == 5 || this.body == 48) && (this.legs == 5 || this.legs == 44))
            {
                this.setBonus = Lang.setBonus(2, false);
                this.moveSpeed += 0.15f;
            }
            if (this.head == 57 && this.body == 37 && this.legs == 35)
            {
                this.setBonus = Lang.setBonus(21, false);
                this.crimsonRegen = true;
            }
            if (this.head == 101 && this.body == 66 && this.legs == 55)
            {
                this.setBonus = Lang.setBonus(30, false);
                this.ghostHeal = true;
            }
            if (this.head == 156 && this.body == 66 && this.legs == 55)
            {
                this.setBonus = Lang.setBonus(35, false);
                this.ghostHurt = true;
            }
            if (this.head == 6 && this.body == 6 && this.legs == 6)
            {
                this.setBonus = Lang.setBonus(3, false);
                this.spaceGun = true;
            }
            if (this.head == 46 && this.body == 27 && this.legs == 26)
            {
                this.frostArmor = true;
                this.setBonus = Lang.setBonus(22, false);
                this.frostBurn = true;
            }
            if ((this.head == 75 || this.head == 7) && (this.body == 7 && this.legs == 7))
            {
                this.boneArmor = true;
                this.setBonus = Lang.setBonus(4, false);
                this.ammoCost80 = true;
            }
            if ((this.head == 76 || this.head == 8) && (this.body == 49 || this.body == 8) && (this.legs == 45 || this.legs == 8))
            {
                this.setBonus = Lang.setBonus(5, false);
                this.manaCost -= 0.16f;
            }
            if (this.head == 9 && this.body == 9 && this.legs == 9)
            {
                this.setBonus = Lang.setBonus(6, false);
                this.meleeDamage += 0.17f;
            }
            if (this.head == 11 && this.body == 20 && this.legs == 19)
            {
                this.setBonus = Lang.setBonus(7, false);
                this.pickSpeed -= 0.3f;
            }
            if ((this.head == 78 || this.head == 79 || this.head == 80) && (this.body == 51 && this.legs == 47))
            {
                this.setBonus = Lang.setBonus(27, false);
                this.AddBuff(60, 18000, true);
            }
            else if (this.crystalLeaf)
            {
                for (int b = 0; b < 22; ++b)
                {
                    if (this.buffType[b] == 60)
                        this.DelBuff(b);
                }
            }
            if (this.head == 99 && this.body == 65 && this.legs == 54)
            {
                this.setBonus = Lang.setBonus(29, false);
                this.thorns = 1f;
                this.turtleThorns = true;
            }
            if (this.body == 17 && this.legs == 16)
            {
                if (this.head == 29)
                {
                    this.setBonus = Lang.setBonus(8, false);
                    this.manaCost -= 0.14f;
                }
                else if (this.head == 30)
                {
                    this.setBonus = Lang.setBonus(9, false);
                    this.meleeSpeed += 0.15f;
                }
                else if (this.head == 31)
                {
                    this.setBonus = Lang.setBonus(10, false);
                    this.ammoCost80 = true;
                }
            }
            if (this.body == 18 && this.legs == 17)
            {
                if (this.head == 32)
                {
                    this.setBonus = Lang.setBonus(11, false);
                    this.manaCost -= 0.17f;
                }
                else if (this.head == 33)
                {
                    this.setBonus = Lang.setBonus(12, false);
                    this.meleeCrit += 5;
                }
                else if (this.head == 34)
                {
                    this.setBonus = Lang.setBonus(13, false);
                    this.ammoCost80 = true;
                }
            }
            if (this.body == 19 && this.legs == 18)
            {
                if (this.head == 35)
                {
                    this.setBonus = Lang.setBonus(14, false);
                    this.manaCost -= 0.19f;
                }
                else if (this.head == 36)
                {
                    this.setBonus = Lang.setBonus(15, false);
                    this.meleeSpeed += 0.18f;
                    this.moveSpeed += 0.18f;
                }
                else if (this.head == 37)
                {
                    this.setBonus = Lang.setBonus(16, false);
                    this.ammoCost75 = true;
                }
            }
            if (this.body == 54 && this.legs == 49 && (this.head == 83 || this.head == 84 || this.head == 85))
            {
                this.setBonus = Lang.setBonus(24, false);
                this.onHitRegen = true;
            }
            if (this.body == 55 && this.legs == 50 && (this.head == 86 || this.head == 87 || this.head == 88))
            {
                this.setBonus = Lang.setBonus(25, false);
                this.onHitPetal = true;
            }
            if (this.body == 56 && this.legs == 51 && (this.head == 89 || this.head == 90 || this.head == 91))
            {
                this.setBonus = Lang.setBonus(26, false);
                this.onHitDodge = true;
            }
            if (this.body == 24 && this.legs == 23)
            {
                if (this.head == 42)
                {
                    this.setBonus = Lang.setBonus(17, false);
                    this.manaCost -= 0.2f;
                }
                else if (this.head == 43)
                {
                    this.setBonus = Lang.setBonus(18, false);
                    this.meleeSpeed += 0.19f;
                    this.moveSpeed += 0.19f;
                }
                else if (this.head == 41)
                {
                    this.setBonus = Lang.setBonus(19, false);
                    this.ammoCost75 = true;
                }
            }
            if (this.head == 82 && this.body == 53 && this.legs == 48)
            {
                this.setBonus = Lang.setBonus(23, false);
                ++this.maxMinions;
            }
            if (this.head == 134 && this.body == 95 && this.legs == 79)
            {
                this.setBonus = Lang.setBonus(34, false);
                this.minionDamage += 0.25f;
            }
            if (this.head == 160 && this.body == 168 && this.legs == 103)
            {
                this.setBonus = Lang.setBonus(39, false);
                this.minionDamage += 0.1f;
                if (this.itemAnimation > 0 && this.inventory[this.selectedItem].itemId == 1121)
                    AchievementsHelper.HandleSpecialEvent(this, 3);
            }
            if (this.head == 162 && this.body == 170 && this.legs == 105)
            {
                this.setBonus = Lang.setBonus(40, false);
                this.minionDamage += 0.12f;
            }
            if (this.head == 171 && this.body == 177 && this.legs == 112)
            {
                this.setSolar = true;
                this.setBonus = Lang.setBonus(43, false);
                ++this.solarCounter;
                int num = 240;
                if (this.solarCounter >= num)
                {
                    if (this.solarShields > 0 && this.solarShields < 3)
                    {
                        for (int b = 0; b < 22; ++b)
                        {
                            if (this.buffType[b] >= 170 && this.buffType[b] <= 171)
                                this.DelBuff(b);
                        }
                    }
                    if (this.solarShields < 3)
                    {
                        this.AddBuff(170 + this.solarShields, 5, false);
                        for (int index = 0; index < 16; ++index)
                        {
                            Dust dust = Main.dust[Dust.NewDust(this.position, this.width, this.height, 6, 0.0f, 0.0f, 100, new Color(), 1f)];
                            dust.noGravity = true;
                            dust.scale = 1.7f;
                            dust.fadeIn = 0.5f;
                            dust.velocity *= 5f;
                            dust.shader = GameShaders.Armor.GetSecondaryShader(this.ArmorSetDye(), this);
                        }
                        this.solarCounter = 0;
                    }
                    else
                        this.solarCounter = num;
                }
                for (int index = this.solarShields; index < 3; ++index)
                    this.solarShieldPos[index] = Vector2.Zero;
                for (int index = 0; index < this.solarShields; ++index)
                {
                    this.solarShieldPos[index] += this.solarShieldVel[index];
                    Vector2 vector2 = Utils.ToRotationVector2((float)((double)this.miscCounter / 100.0 * 6.28318548202515 + (double)index * (6.28318548202515 / (double)this.solarShields))) * 6f;
                    vector2.X = (float)(this.direction * 20);
                    this.solarShieldVel[index] = (vector2 - this.solarShieldPos[index]) * 0.2f;
                }
                if (this.dashDelay >= 0)
                    this.solarDashing = false;
                if (this.solarShields > 0 || this.solarDashing && this.dashDelay < 0)
                    this.dash = 3;
            }
            else
                this.solarCounter = 0;
            if (this.head == 169 && this.body == 175 && this.legs == 110)
            {
                this.setVortex = true;
                this.setBonus = Lang.setBonus(44, false);
            }
            else
                this.vortexStealthActive = false;
            if (this.head == 170 && this.body == 176 && this.legs == 111)
            {
                if (this.nebulaCD > 0)
                    --this.nebulaCD;
                this.setNebula = true;
                this.setBonus = Lang.setBonus(45, false);
            }
            if (this.head == 189 && this.body == 190 && this.legs == 130)
            {
                this.setBonus = Lang.setBonus(46, false);
                this.setStardust = true;
                if (this.whoAmI != Main.myPlayer)
                    return;
                if (this.HasBuff(187) == -1)
                    this.AddBuff(187, 3600, true);
                if (this.ownedProjectileCounts[623] >= 1)
                    return;
                Projectile.NewProjectile(this.Center.X, this.Center.Y, 0.0f, -1f, 623, 0, 0.0f, Main.myPlayer, 0.0f, 0.0f);
            }
            else
            {
                if (this.HasBuff(187) == -1)
                    return;
                this.DelBuff(this.HasBuff(187));
            }
        }
Player