コード例 #1
0
        void AccEffects(Player player, Item acc)
        {
            if (acc.type == 2373)
            {
                player.accFishingLine = true;
            }
            if (acc.type == 2374)
            {
                player.fishingSkill += 10;
            }
            if (acc.type == 2375)
            {
                player.accTackleBox = 1;
            }
            if (acc.type == 2423)
            {
                player.autoJump = true;
                player.jumpSpeedBoost += 2.4f;
                player.extraFall += 15;
            }
            if (acc.type == 15 && player.accWatch < 1)
            {
                player.accWatch = 1;
            }
            if (acc.type == 16 && player.accWatch < 2)
            {
                player.accWatch = 2;
            }
            if (acc.type == 17 && player.accWatch < 3)
            {
                player.accWatch = 3;
            }
            if (acc.type == 707 && player.accWatch < 1)
            {
                player.accWatch = 1;
            }
            if (acc.type == 708 && player.accWatch < 2)
            {
                player.accWatch = 2;
            }
            if (acc.type == 709 && player.accWatch < 3)
            {
                player.accWatch = 3;
            }
            if (acc.type == 18 && player.accDepthMeter < 1)
            {
                player.accDepthMeter = 1;
            }
            if (acc.type == 857)
            {
                player.doubleJump2 = true;
            }
            if (acc.type == 983)
            {
                player.doubleJump2 = true;
                player.jumpBoost = true;
            }
            if (acc.type == 987)
            {
                player.doubleJump3 = true;
            }
            if (acc.type == 1163)
            {
                player.doubleJump3 = true;
                player.jumpBoost = true;
            }
            if (acc.type == 1724)
            {
                player.doubleJump4 = true;
            }
            if (acc.type == 1863)
            {
                player.doubleJump4 = true;
                player.jumpBoost = true;
            }
            if (acc.type == 1164)
            {
                player.doubleJump = true;
                player.doubleJump2 = true;
                player.doubleJump3 = true;
                player.jumpBoost = true;
            }
            if (acc.type == 1250)
            {
                player.jumpBoost = true;
                player.doubleJump = true;
                player.noFallDmg = true;
            }
            if (acc.type == 1252)
            {
                player.doubleJump2 = true;
                player.jumpBoost = true;
                player.noFallDmg = true;
            }
            if (acc.type == 1251)
            {
                player.doubleJump3 = true;
                player.jumpBoost = true;
                player.noFallDmg = true;
            }
            if (acc.type == 1249)
            {
                player.jumpBoost = true;
                player.bee = true;
            }
            if (acc.type == 1253 && (double)player.statLife <= (double)player.statLifeMax2 * 0.25)
            {
                player.AddBuff(62, 5, true);
            }
            if (acc.type == 1290)
            {
                player.panic = true;
            }
            if ((acc.type == 1300 || acc.type == 1858) && (player.inventory[player.selectedItem].useAmmo == 14 || player.inventory[player.selectedItem].useAmmo == 311 || player.inventory[player.selectedItem].useAmmo == 323))
            {
                player.scope = true;
            }
            if (acc.type == 1858)
            {
                player.rangedCrit += 10;
                player.rangedDamage += 0.1f;
            }
            if (acc.type == 1303 && player.wet)
            {
                Lighting.AddLight((int)player.Centre.X / 16, (int)player.Centre.Y / 16, 0.9f, 0.2f, 0.6f);
            }
            if (acc.type == 1301)
            {
                player.meleeCrit += 8;
                player.rangedCrit += 8;
                player.magicCrit += 8;
                player.meleeDamage += 0.1f;
                player.rangedDamage += 0.1f;
                player.magicDamage += 0.1f;
                player.minionDamage += 0.1f;
            }
            if (acc.type == 982)
            {
                player.statManaMax2 += 20;
                player.manaRegenDelayBonus++;
                player.manaRegenBonus += 25;
            }
            if (acc.type == 1595)
            {
                player.statManaMax2 += 20;
                player.magicCuffs = Math.Max(player.magicCuffs, 1f);
            }
            if (acc.type == 2219)
            {
                player.manaMagnet = true;
            }
            if (acc.type == 2220)
            {
                player.manaMagnet = true;
                player.magicDamage += 0.15f;
            }
            if (acc.type == 2221)
            {
                player.manaMagnet = true;
                player.magicCuffs = Math.Max(player.magicCuffs, 1f);
            }
            if (player.whoAmI == Main.myPlayer && acc.type == 1923)
            {
                player.tileRangeX++;
                player.tileRangeY++;
            }
            if (acc.type == 1247)
            {
                player.starCloak = Math.Max(player.starCloak, 3);
                player.bee = true;
            }
            if (acc.type == 1248)
            {
                player.meleeCrit += 10;
                player.rangedCrit += 10;
                player.magicCrit += 10;
            }
            if (acc.type == 854)
            {
                player.discountVanilla *= 0.8f;
            }
            if (acc.type == 855)
            {
                player.coins = true;
            }
            if (acc.type == 53)
            {
                player.doubleJump = true;
            }
            if (acc.type == 54)
            {
                player.moveSpeedMax = Math.Max(player.moveSpeedMax, 6f);
            }
            if (acc.type == 1579)
            {
                player.moveSpeedMax = Math.Max(player.moveSpeedMax, 6f);
                player.coldDash = true;
            }
            if (acc.type == 128)
            {
                player.rocketBoots = Math.Max(player.rocketBoots, 1);
            }
            if (acc.type == 156)
            {
                player.knockbackResist = 0f;
            }
            if (acc.type == 158)
            {
                player.noFallDmg = true;
            }
            if (acc.type == 934)
            {
                player.carpet = true;
            }
            if (acc.type == 953)
            {
                player.spikedBoots++;
            }
            if (acc.type == 975)
            {
                player.spikedBoots++;
            }
            if (acc.type == 976)
            {
                player.spikedBoots += 2;
            }
            if (acc.type == 977)
            {
                player.dash = Math.Max(player.dash, 1);
            }
            if (acc.type == 963)
            {
                player.blackBelt = true;
            }
            if (acc.type == 984)
            {
                player.blackBelt = true;
                player.dash = Math.Max(player.dash, 1);
                player.spikedBoots = Math.Max(player.spikedBoots, 2);
            }
            if (acc.type == 1131)
            {
                player.gravControl2 = true;
            }
            if (acc.type == 1132)
            {
                player.bee = true;
            }
            if (acc.type == 1578)
            {
                player.bee = true;
                player.panic = true;
            }
            if (acc.type == 950)
            {
                player.iceSkate = true;
            }
            if (acc.type == 159)
            {
                player.jumpBoost = true;
            }
            if (acc.type == 187)
            {
                player.accFlipper = true;
            }
            if (acc.type == 211)
            {
                player.meleeSpeed += 0.12f;
            }
            if (acc.type == 223)
            {
                player.manaCost -= 0.06f;
            }
            if (acc.type == 285)
            {
                player.moveSpeed += 0.05f;
            }
            if (acc.type == 212)
            {
                player.moveSpeed += 0.1f;
            }
            if (acc.type == 267)
            {
                player.killGuide = true;
            }
            if (acc.type == 1307)
            {
                player.killClothier = true;
            }
            if (acc.type == 193)
            {
                player.fireWalk = true;
            }
            if (acc.type == 861)
            {
                player.accMerman = true;
                player.wolfAcc = true;
            }
            if (acc.type == 862)
            {
                player.starCloak = Math.Max(player.starCloak, 3);
                player.longInvince = true;
            }
            if (acc.type == 860)
            {
                player.pStoneVanilla *= 0.75f;
            }
            if (acc.type == 863)
            {
                player.waterWalk2 = true;
            }
            if (acc.type == 907)
            {
                player.waterWalk2 = true;
                player.fireWalk = true;
            }
            if (acc.type == 908)
            {
                player.waterWalk = true;
                player.fireWalk = true;
                player.lavaMax += 420;
            }
            if (acc.type == 906)
            {
                player.lavaMax += 420;
            }
            if (acc.type == 485)
            {
                player.wolfAcc = true;
            }
            if (acc.type == 486)
            {
                player.rulerAcc = true;
            }
            if (acc.type == 393 && player.accCompass < 1)
            {
                player.accCompass = 1;
            }
            if (acc.type == 394)
            {
                player.accFlipper = true;
                player.accDivingHelm = true;
            }
            if (acc.type == 395)
            {
                player.accWatch = Math.Max(player.accWatch, 3);
                player.accDepthMeter = Math.Max(player.accDepthMeter, 1);
                player.accCompass = Math.Max(player.accCompass, 1);
            }
            if (acc.type == 396)
            {
                player.noFallDmg = true;
                player.fireWalk = true;
            }
            if (acc.type == 397)
            {
                player.knockbackResist = 0f;
                player.fireWalk = true;
            }
            if (acc.type == 399)
            {
                player.jumpBoost = true;
                player.doubleJump = true;
            }
            if (acc.type == 405)
            {
                player.moveSpeedMax = Math.Max(player.moveSpeedMax, 6f);
                player.rocketBoots = Math.Max(player.rocketBoots, 2);
            }
            if (acc.type == 1860)
            {
                player.accFlipper = true;
                player.accDivingHelm = true;
                if (player.wet)
                {
                    Lighting.AddLight((int)player.Centre.X / 16, (int)player.Centre.Y / 16, 0.9f, 0.2f, 0.6f);
                }
            }
            if (acc.type == 1861)
            {
                player.accFlipper = true;
                player.accDivingHelm = true;
                player.iceSkate = true;
                if (player.wet)
                {
                    Lighting.AddLight((int)player.Centre.X / 16, (int)player.Centre.Y / 16, 0.2f, 0.8f, 0.9f);
                }
            }
            if (acc.type == 2214)
            {
                player.tileSpeed += 0.5f;
            }
            if (player.whoAmI == Main.myPlayer && acc.type == 2215)
            {
                player.tileRangeX += 3;
                player.tileRangeY += 2;
            }
            if (acc.type == 2216)
            {
                player.autoPaint = true;
            }
            if (acc.type == 2217)
            {
                player.wallSpeed += 0.5f;
            }
            if (acc.type == 897)
            {
                player.knockbackMeleeModVanilla *= 2f;
                player.meleeSpeed += 0.12f;
            }
            if (acc.type == 1343)
            {
                player.knockbackMeleeModVanilla *= 2f;
                player.meleeSpeed += 0.09f;
                player.meleeDamage += 0.09f;
                player.magmaStone = true;
            }
            if (acc.type == 1167)
            {
                player.minionKB += 2f;
                player.minionDamage += 0.15f;
            }
            if (acc.type == 1864)
            {
                player.minionKB += 2f;
                player.minionDamage += 0.15f;
                player.maxMinions++;
            }
            if (acc.type == 1845)
            {
                player.minionDamage += 0.1f;
                player.maxMinions++;
            }
            if (acc.type == 1321)
            {
                player.magicQuiver = true;
                player.arrowDamage += 0.1f;
            }
            if (acc.type == 1322)
            {
                player.magmaStone = true;
            }
            if (acc.type == 1323)
            {
                player.lavaRoseVanilla *= 0.625f;
            }
            if (acc.type == 938)
            {
                player.knockbackResist = 0f;

                if (player.statLife > player.statLifeMax2 * 0.25f)
                {
                    if (player.whoAmI == Main.myPlayer)
                    {
                        player.paladinGive = true;
                    }
                    else if (player.miscCounter % 5 == 0)
                    {
                        int myPlayer = Main.myPlayer;
                        if (Main.player[myPlayer].team == player.team && player.team != 0)
                        {
                            float num = player.position.X - Main.player[myPlayer].position.X;
                            float num2 = player.position.Y - Main.player[myPlayer].position.Y;
                            float num3 = (float)Math.Sqrt(num * num + num2 * num2);
                            if (num3 < 800f)
                            {
                                Main.player[myPlayer].AddBuff(43, 10, true);
                            }
                        }
                    }
                }
            }
            if (acc.type == 936)
            {
                player.knockbackMeleeModVanilla *= 0.75f;
                player.meleeSpeed += 0.12f;
                player.meleeDamage += 0.12f;
            }
            if (acc.type == 898)
            {
                player.moveSpeedMax = Math.Max(player.moveSpeedMax, 6.75f);
                player.rocketBoots = Math.Max(player.rocketBoots, 2);
                player.moveSpeed += 0.08f;
            }
            if (acc.type == 1862)
            {
                player.moveSpeedMax = Math.Max(player.moveSpeedMax, 6.75f);
                player.rocketBoots = Math.Max(player.rocketBoots, 3);
                player.moveSpeed += 0.08f;
                player.iceSkate = true;
            }
            if (acc.type == 1865)
            {
                player.lifeRegen += 2;
                player.statDefense += 4;
                player.meleeSpeed += 0.1f;
                player.meleeDamage += 0.1f;
                player.meleeCrit += 2;
                player.rangedDamage += 0.1f;
                player.rangedCrit += 2;
                player.magicDamage += 0.1f;
                player.magicCrit += 2;
                player.pickSpeed -= 0.15f;
                player.minionDamage += 0.1f;
                player.minionKB += 0.5f;
            }
            if (acc.type == 899 && Main.dayTime)
            {
                player.lifeRegen += 2;
                player.statDefense += 4;
                player.meleeSpeed += 0.1f;
                player.meleeDamage += 0.1f;
                player.meleeCrit += 2;
                player.rangedDamage += 0.1f;
                player.rangedCrit += 2;
                player.magicDamage += 0.1f;
                player.magicCrit += 2;
                player.pickSpeed -= 0.15f;
                player.minionDamage += 0.1f;
                player.minionKB += 0.5f;
            }
            if (acc.type == 900 && !Main.dayTime)
            {
                player.lifeRegen += 2;
                player.statDefense += 4;
                player.meleeSpeed += 0.1f;
                player.meleeDamage += 0.1f;
                player.meleeCrit += 2;
                player.rangedDamage += 0.1f;
                player.rangedCrit += 2;
                player.magicDamage += 0.1f;
                player.magicCrit += 2;
                player.pickSpeed -= 0.15f;
                player.minionDamage += 0.1f;
                player.minionKB += 0.5f;
            }
            if (acc.type == 407)
            {
                player.blockRange = Math.Max(player.blockRange, 1);
            }
            if (acc.type == 489)
            {
                player.magicDamage += 0.15f;
            }
            if (acc.type == 490)
            {
                player.meleeDamage += 0.15f;
            }
            if (acc.type == 491)
            {
                player.rangedDamage += 0.15f;
            }
            if (acc.type == 935)
            {
                player.magicDamage += 0.12f;
                player.meleeDamage += 0.12f;
                player.rangedDamage += 0.12f;
                player.minionDamage += 0.12f;
            }
            player.wingTimeMax = Math.Max(player.wingTimeMax, player.GetWingTime(acc));
            if (acc.type == 2609)
            {
                player.ignoreWater = true;
            }
            if (acc.type == 885)
            {
                player.buffImmune[30] = true;
            }
            if (acc.type == 886)
            {
                player.buffImmune[36] = true;
            }
            if (acc.type == 887)
            {
                player.buffImmune[20] = true;
            }
            if (acc.type == 888)
            {
                player.buffImmune[22] = true;
            }
            if (acc.type == 889)
            {
                player.buffImmune[32] = true;
            }
            if (acc.type == 890)
            {
                player.buffImmune[35] = true;
            }
            if (acc.type == 891)
            {
                player.buffImmune[23] = true;
            }
            if (acc.type == 892)
            {
                player.buffImmune[33] = true;
            }
            if (acc.type == 893)
            {
                player.buffImmune[31] = true;
            }
            if (acc.type == 901)
            {
                player.buffImmune[33] = true;
                player.buffImmune[36] = true;
            }
            if (acc.type == 902)
            {
                player.buffImmune[30] = true;
                player.buffImmune[20] = true;
            }
            if (acc.type == 903)
            {
                player.buffImmune[32] = true;
                player.buffImmune[31] = true;
            }
            if (acc.type == 904)
            {
                player.buffImmune[35] = true;
                player.buffImmune[23] = true;
            }
            if (acc.type == 1921)
            {
                player.buffImmune[46] = true;
                player.buffImmune[47] = true;
            }
            if (acc.type == 1612)
            {
                player.buffImmune[33] = true;
                player.buffImmune[36] = true;
                player.buffImmune[30] = true;
                player.buffImmune[20] = true;
                player.buffImmune[32] = true;
                player.buffImmune[31] = true;
                player.buffImmune[35] = true;
                player.buffImmune[23] = true;
                player.buffImmune[22] = true;
            }
            if (acc.type == 1613)
            {
                player.knockbackResist = 0f;
                player.fireWalk = true;
                player.buffImmune[33] = true;
                player.buffImmune[36] = true;
                player.buffImmune[30] = true;
                player.buffImmune[20] = true;
                player.buffImmune[32] = true;
                player.buffImmune[31] = true;
                player.buffImmune[35] = true;
                player.buffImmune[23] = true;
                player.buffImmune[22] = true;
            }
            if (acc.type == 497)
            {
                player.accMerman = true;
            }
            if (acc.type == 535)
            {
                player.pStoneVanilla *= 0.75f;
            }
            if (acc.type == 536)
            {
                player.knockbackResist = 0f;
            }
            if (acc.type == 532)
            {
                player.starCloak = Math.Max(player.starCloak, 3);
            }
            if (acc.type == 554)
            {
                player.longInvince = true;
            }
            if (acc.type == 555)
            {
                player.manaFlower = true;
                player.manaCost -= 0.08f;
            }
            if (Main.myPlayer == player.whoAmI)
            {
                if (acc.type == 576 && Main.rand.Next(18000) == 0 && WavebankDef.current != "" && WavebankDef.current.StartsWith("Vanilla:"))
                {
                    int num4 = Convert.ToInt32(WavebankDef.current.Substring("Vanilla:Music_".Length));
                    int num5;
                    switch (num4)
                    {
                        case 4:
                        case 5:
                        case 9:
                        case 11:
                            num5 = num4;
                            break;
                        case 6:
                        case 7:
                        case 8:
                            goto IL_3066;
                        case 10:
                        case 12:
                            num5 = num4 - 2;
                            break;
                        default:
                            goto IL_3066;
                    }
                    IL_306C:
                    if (num4 == 33)
                    {
                        acc.SetDefaults(2742, false);
                        goto IL_3105;
                    }
                    if (num4 == 29)
                    {
                        acc.SetDefaults(1610, false);
                        goto IL_3105;
                    }
                    if (num4 >= 30 && num4 <= 32)
                    {
                        acc.SetDefaults(1963 + num4 - 30, false);
                        goto IL_3105;
                    }
                    if (num4 > 13)
                    {
                        acc.SetDefaults(1596 + num4 - 14, false);
                        goto IL_3105;
                    }
                    acc.SetDefaults(num5 + 562, false);
                    goto IL_3105;
                    IL_3066:
                    num5 = num4 - 1;
                    goto IL_306C;
                }
                IL_3105:
                if (acc.type >= 562 && acc.type <= 574)
                {
                    Main.musicBox2 = acc.type - 562;
                }
                if (acc.type >= 1596 && acc.type <= 1609)
                {
                    Main.musicBox2 = acc.type - 1596 + 13;
                }
                if (acc.type == 1610)
                {
                    Main.musicBox2 = 27;
                }
                if (acc.type == 1963)
                {
                    Main.musicBox2 = 28;
                }
                if (acc.type == 1964)
                {
                    Main.musicBox2 = 29;
                }
                if (acc.type == 1965)
                {
                    Main.musicBox2 = 30;
                }
                if (acc.type == 2742)
                {
                    Main.musicBox2 = 31;
                }
                if (Main.musicBox2 != -1)
                {
                    WavebankDef.HandleMusicBox(Main.musicBox2);
                }
            }
        }