Пример #1
0
        public override void UpdateAccessory(Player player, bool hideVisual)
        {
            if (!Fargowiltas.Instance.ThoriumLoaded)
            {
                return;
            }

            FargoPlayer   modPlayer     = player.GetModPlayer <FargoPlayer>();
            ThoriumPlayer thoriumPlayer = player.GetModPlayer <ThoriumPlayer>();

            //set bonus
            player.statManaMax2 += (int)(player.statManaMax2 * 0.5);
            if (player.statMana > (int)(player.statManaMax2 * 0.75) || player.statMana > 300)
            {
                player.AddBuff(thorium.BuffType("Overcharge"), 2, true);
                player.magicDamage += 0.5f;
                player.magicCrit   += 26;
            }
            //shade band
            thoriumPlayer.shadeBand = true;
            //pet
            modPlayer.AddPet(SoulConfig.Instance.thoriumToggles.MooglePet, hideVisual, thorium.BuffType("LilMogBuff"), thorium.ProjectileType("LilMog"));
            //villain damage
            modPlayer.KnightEnchant = true;
        }
        public static void HealDamage(Player player, Mod mod, int damage)
        {
            int time = (int)(damage * (120f / healthPer2Secs));
            int id   = mod.BuffType <RapidRecovery>();

            player.AddBuff(id, time, false);
        }
Пример #3
0
        public override void UpdateAccessory(Player player, bool hideVisual)
        {
            if (!FargowiltasSoulsDLC.Instance.ThoriumLoaded)
            {
                return;
            }

            ThoriumPlayer thoriumPlayer = player.GetModPlayer <ThoriumPlayer>();

            //set bonus, breath underwater
            if (player.breath <= player.breathMax + 2)
            {
                player.breath = player.breathMax + 3;
            }
            //sea breeze pendant
            player.accFlipper = true;

            if (player.wet || thoriumPlayer.drownedDoubloon)
            {
                player.AddBuff(thorium.BuffType("AquaticAptitude"), 60, true);
                player.GetModPlayer <FargoDLCPlayer>().AllDamageUp(.1f);
            }

            //bubble magnet
            thoriumPlayer.bubbleMagnet = true;
        }
Пример #4
0
        public override void UpdateAccessory(Player player, bool hideVisual)
        {
            if (!FargowiltasSoulsDLC.Instance.ThoriumLoaded || player.GetModPlayer <FargoDLCPlayer>().ThoriumSoul)
            {
                return;
            }

            ThoriumPlayer thoriumPlayer = player.GetModPlayer <ThoriumPlayer>();

            //paladin set bonus
            thoriumPlayer.fallenPaladinSet = true;
            //wyne
            thoriumPlayer.Wynebgwrthucher = true;
            //rebirth statue
            thoriumPlayer.quickRevive = true;
            //templar set bonus
            for (int i = 0; i < 255; i++)
            {
                Player player2 = Main.player[i];
                if (player2.active && !player2.dead && player2.statLife < (int)(player2.statLifeMax2 * 0.5) && player2 != player)
                {
                    player.AddBuff(thorium.BuffType("HealingMastery"), 120, false);
                }
            }
        }
Пример #5
0
        public override void UpdateAccessory(Player player, bool hideVisual)
        {
            if (!Fargowiltas.Instance.ThoriumLoaded)
            {
                return;
            }

            FargoPlayer   modPlayer     = player.GetModPlayer <FargoPlayer>(mod);
            ThoriumPlayer thoriumPlayer = player.GetModPlayer <ThoriumPlayer>(thorium);

            //cryo set bonus, dmg duplicate
            thoriumPlayer.cryoSet = true;
            //strider hide
            thoriumPlayer.frostBonusDamage = true;
            //music player
            thoriumPlayer.musicPlayer  = true;
            thoriumPlayer.MP3ManaRegen = 2;
            //pets
            modPlayer.IcyEnchant = true;
            modPlayer.AddPet("Penguin Pet", hideVisual, BuffID.BabyPenguin, ProjectileID.Penguin);
            modPlayer.AddPet("Owl Pet", hideVisual, thorium.BuffType("SnowyOwlBuff"), thorium.ProjectileType("SnowyOwlPet"));
            //icy set bonus
            thoriumPlayer.icySet = true;
            if (player.ownedProjectileCounts[thorium.ProjectileType("IcyAura")] < 1)
            {
                Projectile.NewProjectile(player.Center.X, player.Center.Y, 0f, 0f, thorium.ProjectileType("IcyAura"), 0, 0f, player.whoAmI, 0f, 0f);
            }
            //frostburn pouch
            thoriumPlayer.frostburnPouch = true;
        }
Пример #6
0
        private void Thorium(Player player, bool hideVisual)
        {
            ThoriumPlayer thoriumPlayer = player.GetModPlayer <ThoriumPlayer>();

            thoriumPlayer.bioPet = true;
            player.GetModPlayer <FargoPlayer>().AddPet("Bio-Feeder Pet", hideVisual, thorium.BuffType("BioFeederBuff"), thorium.ProjectileType("BioFeederPet"));
        }
Пример #7
0
        private void Calamity(Player player, bool hideVisual)
        {
            CalamityPlayer modPlayer = player.GetModPlayer <CalamityPlayer>(calamity);

            //UNIVERSE
            //melee
            modPlayer.eGauntlet = true;
            //removing the extra boosts it adds because meme calamity
            player.meleeDamage -= .15f;
            player.meleeSpeed  -= .15f;
            player.meleeCrit   -= 5;

            if (Soulcheck.GetValue("Elemental Quiver"))
            {
                //range
                modPlayer.eQuiver = true;
            }

            //magic
            modPlayer.eTalisman = true;
            //summon
            modPlayer.statisBeltOfCurses = true;
            modPlayer.shadowMinions      = true;
            modPlayer.tearMinions        = true;
            //throw
            modPlayer.nanotech = true;
            //DIMENSIONS
            //tank soul
            //rampart of dieties
            modPlayer.dAmulet = true;
            //becase calamity made it itself for some reason no duplicate
            player.starCloak = false;
            //asgardian aegis
            modPlayer.dashMod      = 4;
            modPlayer.elysianAegis = true;
            player.buffImmune[calamity.BuffType("BrimstoneFlames")] = true;
            player.buffImmune[calamity.BuffType("HolyLight")]       = true;
            player.buffImmune[calamity.BuffType("GlacialState")]    = true;
            //celestial tracers
            modPlayer.IBoots      = !hideVisual;
            modPlayer.elysianFire = !hideVisual;
            modPlayer.cTracers    = true;
            //TERRARIA
            mod.GetItem("CalamityForce").UpdateAccessory(player, hideVisual);
            //TYRANT
            mod.GetItem("CalamitySoul").UpdateAccessory(player, hideVisual);
        }
Пример #8
0
        public override void UpdateAccessory(Player player, bool hideVisual)
        {
            if (!Fargowiltas.Instance.ThoriumLoaded)
            {
                return;
            }

            FargoPlayer   modPlayer     = player.GetModPlayer <FargoPlayer>();
            ThoriumPlayer thoriumPlayer = player.GetModPlayer <ThoriumPlayer>();

            //depth diver set
            for (int i = 0; i < 255; i++)
            {
                Player player2 = Main.player[i];
                if (player2.active && Vector2.Distance(player2.Center, player.Center) < 250f)
                {
                    player2.AddBuff(thorium.BuffType("DepthSpeed"), 30, false);
                    player2.AddBuff(thorium.BuffType("DepthDamage"), 30, false);
                    player2.AddBuff(thorium.BuffType("DepthBreath"), 30, false);
                }
            }
            //depth woofer

            /*thoriumPlayer.bardRangeBoost += 450;
             * for (int i = 0; i < 255; i++)
             * {
             *  Player player2 = Main.player[i];
             *  if (player2.active && !player2.dead && Vector2.Distance(player2.Center, player.Center) < 450f)
             *  {
             *      thoriumPlayer.empowerGouge = true;
             *  }
             * }*/

            //sea breeze pendant
            player.accFlipper = true;

            if (player.wet || thoriumPlayer.drownedDoubloon)
            {
                player.AddBuff(thorium.BuffType("AquaticAptitude"), 60, true);
                player.GetModPlayer <FargoPlayer>().AllDamageUp(.1f);
            }

            //bubble magnet
            thoriumPlayer.bubbleMagnet = true;
            modPlayer.DepthEnchant     = true;
            modPlayer.AddPet("Jellyfish Pet", hideVisual, thorium.BuffType("JellyPet"), thorium.ProjectileType("JellyfishPet"));
        }
Пример #9
0
        private void Thorium(Player player)
        {
            //general
            ThoriumPlayer thoriumPlayer = player.GetModPlayer <ThoriumPlayer>(thorium);

            thoriumPlayer.radiantBoost += 0.3f;
            thoriumPlayer.radiantSpeed -= 0.2f;
            thoriumPlayer.healingSpeed += 0.2f;
            thoriumPlayer.radiantCrit  += 15;
            //support stash
            thoriumPlayer.supportSash = true;
            thoriumPlayer.quickBelt   = true;
            //saving grace
            thoriumPlayer.crossHeal = true;
            thoriumPlayer.healBloom = true;
            //soul guard
            thoriumPlayer.graveGoods = true;
            for (int i = 0; i < 255; i++)
            {
                Player player2 = Main.player[i];
                if (player2.active && player2 != player && Vector2.Distance(player2.Center, player.Center) < 400f)
                {
                    player2.AddBuff(thorium.BuffType("AegisAura"), 30, false);
                }
            }
            //archdemon's curse
            thoriumPlayer.darkAura = true;
            //archangels heart
            thoriumPlayer.healBonus += 5;
            //medical bag
            thoriumPlayer.medicalAcc = true;
            //head mirror arrow
            if (Soulcheck.GetValue("Head Mirror"))
            {
                float num  = 0f;
                int   num2 = player.whoAmI;
                for (int i = 0; i < 255; i++)
                {
                    if (Main.player[i].active && Main.player[i] != player && !Main.player[i].dead && (Main.player[i].statLifeMax2 - Main.player[i].statLife) > num)
                    {
                        num  = (Main.player[i].statLifeMax2 - Main.player[i].statLife);
                        num2 = i;
                    }
                }
                if (player.ownedProjectileCounts[thorium.ProjectileType("HealerSymbol")] < 1)
                {
                    Projectile.NewProjectile(player.Center.X, player.Center.Y, 0f, 0f, thorium.ProjectileType("HealerSymbol"), 0, 0f, player.whoAmI, 0f, 0f);
                }
                for (int j = 0; j < 1000; j++)
                {
                    Projectile projectile = Main.projectile[j];
                    if (projectile.active && projectile.owner == player.whoAmI && projectile.type == thorium.ProjectileType("HealerSymbol"))
                    {
                        projectile.timeLeft = 2;
                        projectile.ai[1]    = num2;
                    }
                }
            }
        }
Пример #10
0
        public override void UpdateAccessory(Player player, bool hideVisual)
        {
            if (!Fargowiltas.Instance.CalamityLoaded)
            {
                return;
            }

            CalamityPlayer modPlayer = player.GetModPlayer <CalamityPlayer>(calamity);

            if (Soulcheck.GetValue("Daedalus Effects"))
            {
                modPlayer.daedalusReflect = true;
                modPlayer.daedalusShard   = true;
                modPlayer.daedalusAbsorb  = true;
                modPlayer.daedalusCrystal = true;
                modPlayer.daedalusSplit   = true;
            }

            if (Soulcheck.GetValue("Permafrost's Concoction"))
            {
                //permafrost concoction
                modPlayer.permafrostsConcoction = true;
            }

            if (player.GetModPlayer <FargoPlayer>().Eternity)
            {
                return;
            }

            if (Soulcheck.GetValue("Daedalus Crystal Minion") && player.whoAmI == Main.myPlayer)
            {
                if (player.FindBuffIndex(calamity.BuffType("DaedalusCrystal")) == -1)
                {
                    player.AddBuff(calamity.BuffType("DaedalusCrystal"), 3600, true);
                }
                if (player.ownedProjectileCounts[calamity.ProjectileType("DaedalusCrystal")] < 1)
                {
                    Projectile.NewProjectile(player.Center.X, player.Center.Y, 0f, -1f, calamity.ProjectileType("DaedalusCrystal"), 0, 0f, Main.myPlayer, 0f, 0f);
                }
            }

            //regenerator
            modPlayer.regenator = true;

            //pet soon tm
        }
        public override void UpdateAccessory(Player player, bool hideVisual)
        {
            FargoPlayer modPlayer = player.GetModPlayer <FargoPlayer>();

            //mining speed, spelunker, dangersense, light, hunter, pet
            modPlayer.MinerEffect(hideVisual, .5f);
            //placing speed up
            player.tileSpeed += 0.5f;
            player.wallSpeed += 0.5f;
            //toolbox
            Player.tileRangeX += 50;
            Player.tileRangeY += 50;
            //gizmo pack
            player.autoPaint = true;
            //presserator
            player.autoActuator = true;

            if (Soulcheck.GetValue("Builder Mode"))
            {
                modPlayer.BuilderMode = true;
            }

            //cell phone
            player.accWatch        = 3;
            player.accDepthMeter   = 1;
            player.accCompass      = 1;
            player.accFishFinder   = true;
            player.accDreamCatcher = true;
            player.accOreFinder    = true;
            player.accStopwatch    = true;
            player.accCritterGuide = true;
            player.accJarOfSouls   = true;
            player.accThirdEye     = true;
            player.accCalendar     = true;
            player.accWeatherRadio = true;

            if (!Fargowiltas.Instance.ThoriumLoaded)
            {
                return;
            }

            //pets
            modPlayer.AddPet("Inspiring Lantern Pet", hideVisual, thorium.BuffType("SupportLanternBuff"), thorium.ProjectileType("SupportLantern"));
            modPlayer.AddPet("Lock Box Pet", hideVisual, thorium.BuffType("LockBoxBuff"), thorium.ProjectileType("LockBoxPet"));
        }
Пример #12
0
        public override void UpdateAccessory(Player player, bool hideVisual)
        {
            if (!Fargowiltas.Instance.CalamityLoaded)
            {
                return;
            }

            calamity.Call("SetSetBonus", player, "aerospec", true);
            player.noFallDmg = true;

            if (player.GetModPlayer <FargoPlayer>().Eternity)
            {
                return;
            }

            if (SoulConfig.Instance.GetValue(SoulConfig.Instance.calamityToggles.ValkyrieMinion))
            {
                calamity.Call("SetSetBonus", player, "aerospec_summon", true);
                if (player.whoAmI == Main.myPlayer)
                {
                    if (player.FindBuffIndex(calamity.BuffType("Valkyrie")) == -1)
                    {
                        player.AddBuff(calamity.BuffType("Valkyrie"), 3600, true);
                    }
                    if (player.ownedProjectileCounts[calamity.ProjectileType("Valkyrie")] < 1)
                    {
                        Projectile.NewProjectile(player.Center.X, player.Center.Y, 0f, -1f, calamity.ProjectileType("Valkyrie"), 25, 0f, Main.myPlayer, 0f, 0f);
                    }
                }
            }

            if (SoulConfig.Instance.GetValue(SoulConfig.Instance.calamityToggles.GladiatorLocket))
            {
                calamity.GetItem("GladiatorsLocket").UpdateAccessory(player, hideVisual);
            }
            if (SoulConfig.Instance.GetValue(SoulConfig.Instance.calamityToggles.UnstablePrism))
            {
                calamity.GetItem("UnstablePrism").UpdateAccessory(player, hideVisual);
            }

            FargoPlayer fargoPlayer = player.GetModPlayer <FargoPlayer>();

            fargoPlayer.AerospecEnchant = true;
            fargoPlayer.AddPet(SoulConfig.Instance.calamityToggles.RotomPet, hideVisual, ModContent.BuffType <RotomBuff>(), ModContent.ProjectileType <RotomPet>());
        }
Пример #13
0
        public override void UpdateAccessory(Player player, bool hideVisual)
        {
            if (!Fargowiltas.Instance.ThoriumLoaded)
            {
                return;
            }

            FargoPlayer   modPlayer     = player.GetModPlayer <FargoPlayer>();
            ThoriumPlayer thoriumPlayer = player.GetModPlayer <ThoriumPlayer>(thorium);

            thoriumPlayer.geodeShine = true;
            Lighting.AddLight(player.position, 1.2f, 0.8f, 1.2f);
            //pets
            modPlayer.AddPet("Inspiring Lantern Pet", hideVisual, thorium.BuffType("SupportLanternBuff"), thorium.ProjectileType("SupportLantern"));
            modPlayer.AddPet("Lock Box Pet", hideVisual, thorium.BuffType("LockBoxBuff"), thorium.ProjectileType("LockBoxPet"));
            //mining speed, spelunker, dangersense, light, hunter, pet
            modPlayer.MinerEffect(hideVisual, .5f);
        }
Пример #14
0
 private void Calamity()
 {
     if (Main.netMode != 1)
     {
         for (int k = 0; k < 200; k++)
         {
             if (Main.npc[k].active && !Main.npc[k].friendly)
             {
                 Main.npc[k].buffImmune[calamity.BuffType("YellowDamageCandle")] = false;
                 if (Main.npc[k].GetGlobalNPC <CalamityGlobalNPC>().DR >= 0.99f)
                 {
                     Main.npc[k].buffImmune[calamity.BuffType("YellowDamageCandle")] = true;
                 }
                 Main.npc[k].AddBuff(calamity.BuffType("YellowDamageCandle"), 0x14, false);
             }
         }
     }
 }
Пример #15
0
        public override void SafeOnHitNPC(NPC n, int damage, float knockback, bool crit)
        {
            Mod Calamity = ModLoader.GetMod("CalamityMod");

            if (Calamity != null)
            {
                n.AddBuff(Calamity.BuffType("CrushDepth"), 300); //poisoned 10
            }
        }
Пример #16
0
        public override void SafeOnHitNPC(NPC target, int damage, float knockback, bool crit, Player player, OrchidModPlayer modPlayer)
        {
            Mod thoriumMod = OrchidMod.ThoriumMod;

            if (thoriumMod != null && Main.rand.Next(2) == 0)
            {
                target.AddBuff((thoriumMod.BuffType("Singed")), 2 * 60);
            }

            if (modPlayer.shamanOrbBig != ShamanOrbBig.VOLCANO)
            {
                modPlayer.shamanOrbBig = ShamanOrbBig.VOLCANO;
                modPlayer.orbCountBig  = 0;
            }
            modPlayer.orbCountBig++;

            if (modPlayer.orbCountBig == 2)
            {
                Projectile.NewProjectile(player.Center.X - 30, player.position.Y - 30, 0f, 0f, mod.ProjectileType("MonowaiOrb"), 0, 0, projectile.owner, 0f, 0f);

                if (player.FindBuffIndex(mod.BuffType("ShamanicBaubles")) > -1)
                {
                    modPlayer.orbCountBig += 2;
                    Projectile.NewProjectile(player.Center.X - 15, player.position.Y - 38, 0f, 0f, mod.ProjectileType("MonowaiOrb"), 1, 0, projectile.owner, 0f, 0f);
                    player.ClearBuff(mod.BuffType("ShamanicBaubles"));
                }
            }
            if (modPlayer.orbCountBig == 4)
            {
                Projectile.NewProjectile(player.Center.X - 15, player.position.Y - 38, 0f, 0f, mod.ProjectileType("MonowaiOrb"), 0, 0, projectile.owner, 0f, 0f);
            }
            if (modPlayer.orbCountBig == 6)
            {
                Projectile.NewProjectile(player.Center.X, player.position.Y - 40, 0f, 0f, mod.ProjectileType("MonowaiOrb"), 0, 0, projectile.owner, 0f, 0f);
            }
            if (modPlayer.orbCountBig == 8)
            {
                Projectile.NewProjectile(player.Center.X + 15, player.position.Y - 38, 0f, 0f, mod.ProjectileType("MonowaiOrb"), 0, 0, projectile.owner, 0f, 0f);
            }
            if (modPlayer.orbCountBig == 10)
            {
                Projectile.NewProjectile(player.Center.X + 30, player.position.Y - 30, 0f, 0f, mod.ProjectileType("MonowaiOrb"), 0, 0, projectile.owner, 0f, 0f);
            }
            if (modPlayer.orbCountBig > 10)
            {
                int dmg = (int)(50 * modPlayer.shamanDamage);
                Projectile.NewProjectile(projectile.position.X, projectile.position.Y, 0f, 0f, mod.ProjectileType("MonowaiExplosion"), dmg, 0.0f, projectile.owner, 0.0f, 0.0f);
                spawnDustCircle(6, 80);
                spawnDustCircle(59, 60);
                spawnDustCircle(6, 50);
                spawnDustCircle(59, 40);
                spawnDustCircle(6, 30);
                Main.PlaySound(2, (int)projectile.position.X, (int)projectile.position.Y, 14);

                modPlayer.orbCountBig = -3;
            }
        }
Пример #17
0
        public override void SafeOnHitNPC(NPC target, int damage, float knockback, bool crit, Player player, OrchidModPlayer modPlayer)
        {
            Mod thoriumMod = OrchidMod.ThoriumMod;

            if (thoriumMod != null)
            {
                target.AddBuff((thoriumMod.BuffType("TerrariumMix")), 2 * 60);
            }
        }
Пример #18
0
        public override void UpdateAccessory(Player player, bool hideVisual)
        {
            if (!Fargowiltas.Instance.CalamityLoaded)
            {
                return;
            }

            CalamityPlayer modPlayer = player.GetModPlayer <CalamityPlayer>(calamity);

            modPlayer.aeroSet = true;
            player.noFallDmg  = true;

            if (player.GetModPlayer <FargoPlayer>().Eternity)
            {
                return;
            }

            if (Soulcheck.GetValue("Valkyrie Minion"))
            {
                modPlayer.valkyrie = true;
                if (player.whoAmI == Main.myPlayer)
                {
                    if (player.FindBuffIndex(calamity.BuffType("Valkyrie")) == -1)
                    {
                        player.AddBuff(calamity.BuffType("Valkyrie"), 3600, true);
                    }
                    if (player.ownedProjectileCounts[calamity.ProjectileType("Valkyrie")] < 1)
                    {
                        Projectile.NewProjectile(player.Center.X, player.Center.Y, 0f, -1f, calamity.ProjectileType("Valkyrie"), 25, 0f, Main.myPlayer, 0f, 0f);
                    }
                }
            }

            if (Soulcheck.GetValue("Gladiator's Locket"))
            {
                calamity.GetItem("GladiatorsLocket").UpdateAccessory(player, hideVisual);
            }
            if (Soulcheck.GetValue("Unstable Prism"))
            {
                calamity.GetItem("UnstablePrism").UpdateAccessory(player, hideVisual);
            }

            //spawn pet soon tm
        }
Пример #19
0
        public override void UpdateAccessory(Player player, bool hideVisual)
        {
            if (!FargowiltasSoulsDLC.Instance.CalamityLoaded)
            {
                return;
            }

            if (SoulConfig.Instance.GetValue(SoulConfig.Instance.calamityToggles.ReaverEffects))
            {
                calamity.Call("SetSetBonus", player, "reaver_melee", true);
                calamity.Call("SetSetBonus", player, "reaver_ranged", true);
                calamity.Call("SetSetBonus", player, "reaver_magic", true);
                calamity.Call("SetSetBonus", player, "reaver_rogue", true);
            }

            if (SoulConfig.Instance.GetValue(SoulConfig.Instance.calamityToggles.ReaverMinion))
            {
                calamity.Call("SetSetBonus", player, "reaver_summon", true);
                if (player.whoAmI == Main.myPlayer)
                {
                    if (player.FindBuffIndex(calamity.BuffType("ReaverOrb")) == -1)
                    {
                        player.AddBuff(calamity.BuffType("ReaverOrb"), 3600, true);
                    }
                    if (player.ownedProjectileCounts[calamity.ProjectileType("ReaverOrb")] < 1)
                    {
                        Projectile.NewProjectile(player.Center.X, player.Center.Y, 0f, -1f, calamity.ProjectileType("ReaverOrb"), (int)(80f * player.minionDamage), 0f, Main.myPlayer, 0f, 0f);
                    }
                }
            }

            //fabled tortoise shell
            if (SoulConfig.Instance.GetValue(SoulConfig.Instance.calamityToggles.FabledTurtleShell))
            {
                calamity.GetItem("FabledTortoiseShell").UpdateAccessory(player, hideVisual);
                player.statDefense += 35;
            }

            //pet
            FargoDLCPlayer fargoPlayer = player.GetModPlayer <FargoDLCPlayer>();

            fargoPlayer.ReaverEnchant = true;
            fargoPlayer.AddPet(SoulConfig.Instance.calamityToggles.SparksPet, hideVisual, ModContent.BuffType <SparksBuff>(), ModContent.ProjectileType <Sparks>());
        }
        public override void UpdateAccessory(Player player, bool hideVisual)
        {
            if (!FargowiltasSoulsDLC.Instance.CalamityLoaded)
            {
                return;
            }

            if (SoulConfig.Instance.GetValue(SoulConfig.Instance.calamityToggles.ShellfishMinion))
            {
                //set bonus clams
                calamity.Call("SetSetBonus", player, "mollusk", true);
                player.maxMinions += 4;
                if (player.whoAmI == Main.myPlayer)
                {
                    if (player.FindBuffIndex(calamity.BuffType("Shellfish")) == -1)
                    {
                        player.AddBuff(calamity.BuffType("Shellfish"), 3600, true);
                    }
                    if (player.ownedProjectileCounts[calamity.ProjectileType("Shellfish")] < 2)
                    {
                        Projectile.NewProjectile(player.Center.X, player.Center.Y, 0f, -1f, calamity.ProjectileType("Shellfish"), (int)(1500.0 * (double)player.minionDamage), 0f, Main.myPlayer, 0f, 0f);
                    }
                }
            }

            if (SoulConfig.Instance.GetValue(SoulConfig.Instance.calamityToggles.GiantPearl))
            {
                calamity.GetItem("GiantPearl").UpdateAccessory(player, hideVisual);
            }

            if (SoulConfig.Instance.GetValue(SoulConfig.Instance.calamityToggles.AmidiasPendant))
            {
                calamity.GetItem("AmidiasPendant").UpdateAccessory(player, hideVisual);
            }

            calamity.GetItem("AquaticEmblem").UpdateAccessory(player, hideVisual);
            calamity.GetItem("EnchantedPearl").UpdateAccessory(player, hideVisual);
            mod.GetItem("VictideEnchant").UpdateAccessory(player, hideVisual);

            FargoDLCPlayer fargoPlayer = player.GetModPlayer <FargoDLCPlayer>();

            fargoPlayer.MolluskEnchant = true;
            fargoPlayer.AddPet(SoulConfig.Instance.calamityToggles.GhostBellPet, hideVisual, ModContent.BuffType <BabyGhostBellBuff>(), ModContent.ProjectileType <BabyGhostBell>());
        }
Пример #21
0
        public override void SafeOnHitNPC(NPC target, int damage, float knockback, bool crit, Player player, OrchidModPlayer modPlayer)
        {
            Mod thoriumMod = OrchidMod.ThoriumMod;

            if (thoriumMod != null && Main.rand.Next(2) == 0)
            {
                target.AddBuff((thoriumMod.BuffType("LightCurse")), 1 * 60);
            }

            if (modPlayer.shamanOrbBig != ShamanOrbBig.VALADIUM)
            {
                modPlayer.shamanOrbBig = ShamanOrbBig.VALADIUM;
                modPlayer.orbCountBig  = 0;
            }
            modPlayer.orbCountBig++;

            if (modPlayer.orbCountBig == 3)
            {
                Projectile.NewProjectile(player.Center.X - 30, player.position.Y - 30, 0f, 0f, mod.ProjectileType("ValadiumOrb"), 0, 0, projectile.owner, 0f, 0f);

                if (player.FindBuffIndex(mod.BuffType("ShamanicBaubles")) > -1)
                {
                    modPlayer.orbCountBig += 3;
                    Projectile.NewProjectile(player.Center.X - 15, player.position.Y - 38, 0f, 0f, mod.ProjectileType("ValadiumOrb"), 1, 0, projectile.owner, 0f, 0f);
                    player.ClearBuff(mod.BuffType("ShamanicBaubles"));
                }
            }
            if (modPlayer.orbCountBig == 6)
            {
                Projectile.NewProjectile(player.Center.X - 15, player.position.Y - 38, 0f, 0f, mod.ProjectileType("ValadiumOrb"), 0, 0, projectile.owner, 0f, 0f);
            }
            if (modPlayer.orbCountBig == 9)
            {
                Projectile.NewProjectile(player.Center.X, player.position.Y - 40, 0f, 0f, mod.ProjectileType("ValadiumOrb"), 0, 0, projectile.owner, 0f, 0f);
            }
            if (modPlayer.orbCountBig == 12)
            {
                Projectile.NewProjectile(player.Center.X + 15, player.position.Y - 38, 0f, 0f, mod.ProjectileType("ValadiumOrb"), 0, 0, projectile.owner, 0f, 0f);
            }
            if (modPlayer.orbCountBig == 15)
            {
                Projectile.NewProjectile(player.Center.X + 30, player.position.Y - 30, 0f, 0f, mod.ProjectileType("ValadiumOrb"), 0, 0, projectile.owner, 0f, 0f);
            }
            if (modPlayer.orbCountBig > 15)
            {
                knockback = 0f;
                if (!(target.boss || target.type == NPCID.TargetDummy) && target.knockBackResist > 0f)
                {
                    target.velocity.X = projectile.velocity.X > 0f ? 8f : -8f;
                    target.velocity.Y = -10f;
                    target.AddBuff((mod.BuffType("AquaBump")), 10 * 60);
                }
                spawnDustCircle(70, 35);
                modPlayer.orbCountBig = -3;
            }
        }
Пример #22
0
 public static void AddKatchinFeetBuff(Player player)
 {
     // reset the player fall position here, even if they don't have flight dampening.
     player.fallStart = (int)(player.position.Y / 16f);
     if (MyPlayer.ModPlayer(player).flightDampeningUnlocked)
     {
         Mod mod = ModLoader.GetMod("DBZMOD");
         player.AddBuff(mod.BuffType("KatchinFeet"), 600);
     }
 }
Пример #23
0
        public override void UpdateAccessory(Player player, bool hideVisual)
        {
            if (!FargowiltasSoulsDLC.Instance.CalamityLoaded)
            {
                return;
            }

            if (SoulConfig.Instance.GetValue(SoulConfig.Instance.calamityToggles.AtaxiaEffects))
            {
                calamity.Call("SetSetBonus", player, "ataxia", true);
                calamity.Call("SetSetBonus", player, "ataxia_melee", true);
                calamity.Call("SetSetBonus", player, "ataxia_ranged", true);
                calamity.Call("SetSetBonus", player, "ataxia_magic", true);
                calamity.Call("SetSetBonus", player, "ataxia_rogue", true);
            }

            if (SoulConfig.Instance.calamityToggles.HallowedRune)
            {
                calamity.GetItem("HallowedRune").UpdateAccessory(player, hideVisual);
            }

            if (SoulConfig.Instance.calamityToggles.HallowedRune)
            {
                calamity.GetItem("EtherealExtorter").UpdateAccessory(player, hideVisual);
            }

            if (SoulConfig.Instance.GetValue(SoulConfig.Instance.calamityToggles.ChaosMinion))
            {
                //summon
                calamity.Call("SetSetBonus", player, "ataxia_summon", true);
                if (player.whoAmI == Main.myPlayer)
                {
                    if (player.FindBuffIndex(calamity.BuffType("ChaosSpirit")) == -1)
                    {
                        player.AddBuff(calamity.BuffType("ChaosSpirit"), 3600, true);
                    }
                    if (player.ownedProjectileCounts[calamity.ProjectileType("ChaosSpirit")] < 1)
                    {
                        Projectile.NewProjectile(player.Center.X, player.Center.Y, 0f, -1f, calamity.ProjectileType("ChaosSpirit"), (int)(190f * player.minionDamage), 0f, Main.myPlayer, 0f, 0f);
                    }
                }
            }
        }
Пример #24
0
        private void Thorium(Player player)
        {
            ThoriumPlayer thoriumPlayer = player.GetModPlayer <ThoriumPlayer>();

            //terrarium defender
            if (player.statLife < player.statLifeMax * 0.2f)
            {
                player.AddBuff(thorium.BuffType("TerrariumRegen"), 10, true);
                player.lifeRegen += 20;
            }
            if (player.statLife < player.statLifeMax * 0.25f)
            {
                player.AddBuff(thorium.BuffType("TerrariumDefense"), 10, true);
                player.statDefense += 20;
            }
            //oceans retaliation
            thoriumPlayer.turtleShield2 = true;
            thoriumPlayer.SpinyShield   = true;
        }
Пример #25
0
        public override void UpdateAccessory(Player player, bool hideVisual)
        {
            if (!Fargowiltas.Instance.CalamityLoaded)
            {
                return;
            }

            CalamityPlayer modPlayer = player.GetModPlayer <CalamityPlayer>(calamity);

            if (Soulcheck.GetValue("Reaver Effects"))
            {
                //melee
                modPlayer.reaverBlast = true;
                //range
                modPlayer.reaverDoubleTap = true;
                //magic
                modPlayer.reaverBurst = true;
                //throw
                modPlayer.reaverSpore = true;
            }

            if (player.GetModPlayer <FargoPlayer>().Eternity)
            {
                return;
            }

            if (Soulcheck.GetValue("Reaver Orb Minion"))
            {
                //summon
                modPlayer.reaverOrb = true;
                if (player.whoAmI == Main.myPlayer)
                {
                    if (player.FindBuffIndex(calamity.BuffType("ReaverOrb")) == -1)
                    {
                        player.AddBuff(calamity.BuffType("ReaverOrb"), 3600, true);
                    }
                    if (player.ownedProjectileCounts[calamity.ProjectileType("ReaverOrb")] < 1)
                    {
                        Projectile.NewProjectile(player.Center.X, player.Center.Y, 0f, -1f, calamity.ProjectileType("ReaverOrb"), 0, 0f, Main.myPlayer, 0f, 0f);
                    }
                }
            }
        }
Пример #26
0
        public override void UpdateAccessory(Player player, bool hideVisual)
        {
            if (!Fargowiltas.Instance.CalamityLoaded)
            {
                return;
            }

            CalamityPlayer modPlayer = player.GetModPlayer <CalamityPlayer>();

            if (SoulConfig.Instance.GetValue("Shellfish Minions"))
            {
                //set bonus clams
                modPlayer.molluskSet = true;
                player.maxMinions   += 4;
                if (player.whoAmI == Main.myPlayer)
                {
                    if (player.FindBuffIndex(calamity.BuffType("Shellfish")) == -1)
                    {
                        player.AddBuff(calamity.BuffType("Shellfish"), 3600, true);
                    }
                    if (player.ownedProjectileCounts[calamity.ProjectileType("Shellfish")] < 2)
                    {
                        Projectile.NewProjectile(player.Center.X, player.Center.Y, 0f, -1f, calamity.ProjectileType("Shellfish"), (int)(1500.0 * (double)player.minionDamage), 0f, Main.myPlayer, 0f, 0f);
                    }
                }
            }

            if (SoulConfig.Instance.GetValue("Giant Pearl"))
            {
                modPlayer.giantPearl = true;
                Lighting.AddLight((int)(player.position.X + (float)(player.width / 2)) / 16, (int)(player.position.Y + (float)(player.height / 2)) / 16, 0.45f, 0.8f, 0.8f);
            }

            if (SoulConfig.Instance.GetValue("Amidias' Pendant"))
            {
                calamity.GetItem("AmidiasPendant").UpdateAccessory(player, hideVisual);
            }

            FargoPlayer fargoPlayer = player.GetModPlayer <FargoPlayer>();

            fargoPlayer.MolluskEnchant = true;
            fargoPlayer.AddPet("Danny Pet", hideVisual, calamity.BuffType("DannyDevito"), calamity.ProjectileType("DannyDevito"));
        }
Пример #27
0
        public override void UpdateAccessory(Player player, bool hideVisual)
        {
            player.wingTimeMax = 60;
            Mod calamityMod = ModLoader.GetMod("CalamityMod");

            if (!Main.hardMode)
            {
                player.AddBuff(calamityMod.BuffType("BrimstoneFlames"), 2);
            }
        }
Пример #28
0
        public static void postUpdateShaman(Player player, OrchidModPlayer modPlayer, Mod mod)
        {
            if (modPlayer.shamanFireTimer <= 0 &&
                modPlayer.shamanWaterTimer <= 0 &&
                modPlayer.shamanAirTimer <= 0 &&
                modPlayer.shamanEarthTimer <= 0 &&
                modPlayer.shamanSpiritTimer <= 0)
            {
                modPlayer.shamanOrbBig    = ShamanOrbBig.NULL;
                modPlayer.shamanOrbSmall  = ShamanOrbSmall.NULL;
                modPlayer.shamanOrbLarge  = ShamanOrbLarge.NULL;
                modPlayer.shamanOrbUnique = ShamanOrbUnique.NULL;

                modPlayer.orbCountSmall  = 0;
                modPlayer.orbCountBig    = 0;
                modPlayer.orbCountLarge  = 0;
                modPlayer.orbCountUnique = 0;
                modPlayer.orbCountCircle = 0;
            }

            if (!(player.FindBuffIndex(mod.BuffType("SpiritualBurst")) > -1) && modPlayer.orbCountCircle > 39 && modPlayer.shamanOrbCircle == ShamanOrbCircle.REVIVER)
            {
                modPlayer.orbCountCircle = 0;
            }

            if (modPlayer.orbCountBig < 0)
            {
                modPlayer.orbCountBig = 0;
            }

            if (modPlayer.shamanTimerCrimson < 30)
            {
                modPlayer.shamanTimerCrimson++;
            }

            if (modPlayer.shamanTimerViscount < 180)
            {
                modPlayer.shamanTimerViscount++;
            }

            if (modPlayer.shamanTimerHellDamage < 600)
            {
                modPlayer.shamanTimerHellDamage++;
            }

            if (modPlayer.shamanTimerHellDefense < 300)
            {
                modPlayer.shamanTimerHellDefense++;
            }

            if (modPlayer.timerVial < 30)
            {
                modPlayer.timerVial++;
            }
        }
        public override void SafeOnHitNPC(NPC target, int damage, float knockback, bool crit, Player player, OrchidModPlayer modPlayer)
        {
            Mod thoriumMod = OrchidMod.ThoriumMod;

            if (thoriumMod != null)
            {
                target.AddBuff((thoriumMod.BuffType("GraniteSurge")), 3 * 60);
            }

            if (Main.LocalPlayer.FindBuffIndex(mod.BuffType("GraniteAura")) > -1 || Main.LocalPlayer.FindBuffIndex(mod.BuffType("SpiritualBurst")) > -1)
            {
                return;
            }

            if (modPlayer.shamanOrbCircle != ShamanOrbCircle.GRANITE)
            {
                modPlayer.shamanOrbCircle = ShamanOrbCircle.GRANITE;
                modPlayer.orbCountCircle  = 0;
            }
            modPlayer.orbCountCircle++;

            if (modPlayer.orbCountCircle == 1)
            {
                Projectile.NewProjectile(player.Center.X, player.position.Y - 100, 0f, 0f, mod.ProjectileType("GraniteEnergyScepterOrb"), 0, 0, projectile.owner, 0f, 0f);
            }

            if (modPlayer.orbCountCircle == 2)
            {
                Projectile.NewProjectile(player.Center.X + 110, player.position.Y + 10, 0f, 0f, mod.ProjectileType("GraniteEnergyScepterOrb"), 0, 0, projectile.owner, 0f, 0f);
            }


            if (modPlayer.orbCountCircle == 3)
            {
                Projectile.NewProjectile(player.Center.X, player.position.Y + 120, 0f, 0f, mod.ProjectileType("GraniteEnergyScepterOrb"), 0, 0, projectile.owner, 0f, 0f);
            }


            if (modPlayer.orbCountCircle == 4)
            {
                Projectile.NewProjectile(player.Center.X - 110, player.position.Y + 10, 0f, 0f, mod.ProjectileType("GraniteEnergyScepterOrb"), 0, 0, projectile.owner, 0f, 0f);
            }


            if (modPlayer.orbCountCircle == 5)
            {
                modPlayer.orbCountCircle = 0;

                player.AddBuff(mod.BuffType("GraniteAura"), 60 * 30);
                Projectile.NewProjectile(player.Center.X, player.position.Y - 100, 0f, 0f, mod.ProjectileType("GraniteEnergyScepterOrbProj"), 1, 0, projectile.owner, 0f, 0f);
                Projectile.NewProjectile(player.Center.X + 110, player.position.Y + 10, 0f, 0f, mod.ProjectileType("GraniteEnergyScepterOrbProj"), 2, 0, projectile.owner, 0f, 0f);
                Projectile.NewProjectile(player.Center.X, player.position.Y + 120, 0f, 0f, mod.ProjectileType("GraniteEnergyScepterOrbProj"), 3, 0, projectile.owner, 0f, 0f);
                Projectile.NewProjectile(player.Center.X - 110, player.position.Y + 10, 0f, 0f, mod.ProjectileType("GraniteEnergyScepterOrbProj"), 4, 0, projectile.owner, 0f, 0f);
            }
        }
        public override void UpdateAccessory(Player player, bool hideVisual)
        {
            if (!Fargowiltas.Instance.CalamityLoaded)
            {
                return;
            }

            FargoPlayer    modPlayer      = player.GetModPlayer <FargoPlayer>(mod);
            CalamityPlayer calamityPlayer = player.GetModPlayer <CalamityPlayer>(calamity);

            calamityPlayer.statigelSet = true;
            player.doubleJumpSail      = true;
            player.jumpBoost           = true;

            if (Soulcheck.GetValue("Slime God Minion"))
            {
                //summon
                calamityPlayer.slimeGod = true;
                if (player.whoAmI == Main.myPlayer)
                {
                    if (player.FindBuffIndex(calamity.BuffType("SlimeGod")) == -1)
                    {
                        player.AddBuff(calamity.BuffType("SlimeGod"), 3600, true);
                    }
                    if (WorldGen.crimson && player.ownedProjectileCounts[calamity.ProjectileType("SlimeGodAlt")] < 1)
                    {
                        Projectile.NewProjectile(player.Center.X, player.Center.Y, 0f, -1f, calamity.ProjectileType("SlimeGodAlt"), 33, 0f, Main.myPlayer, 0f, 0f);
                        return;
                    }
                    if (!WorldGen.crimson && player.ownedProjectileCounts[calamity.ProjectileType("SlimeGod")] < 1)
                    {
                        Projectile.NewProjectile(player.Center.X, player.Center.Y, 0f, -1f, calamity.ProjectileType("SlimeGod"), 33, 0f, Main.myPlayer, 0f, 0f);
                    }
                }
            }

            calamity.GetItem("FungalSymbiote").UpdateAccessory(player, hideVisual);

            //counter scarf
            calamityPlayer.dodgeScarf = true;
            calamityPlayer.dashMod    = 1;
        }