Example #1
0
        ////////////////

        public void HurtForTiles(Player player, int buff_idx, IDictionary <int, ISet <int> > from_tiles)
        {
            var mymod     = (DowsingMod)this.mod;
            var modplayer = player.GetModPlayer <DowsingPlayer>();
            int count     = modplayer.TileData.CountDowsings();

            PsiBoltProjectile.Fire(mymod, player, from_tiles, true);

            int damage = mymod.Config.Data.PsychokineticBacklashTileDamageBase;

            damage += (count - 1) * mymod.Config.Data.PsychokineticBacklashDamageStack;

            player.Hurt(PsychokineticChargeDebuff.GetDeathMessage(player), damage, 0);
        }
Example #2
0
        private bool UpdateForTiles(Player player, int buff_idx)
        {
            var mymod     = (DowsingMod)this.mod;
            var modplayer = player.GetModPlayer <DowsingPlayer>();
            int count     = modplayer.TileData.CountDowsings();

            if (count > 0)
            {
                if (player.whoAmI == Main.myPlayer)
                {
                    int range = mymod.Config.Data.PsychokineticDegaussingTileRange;
                    var tiles = modplayer.TileData.DegaussWithinRange(range);
                    PsiBoltProjectile.Fire(mymod, player, tiles, false);
                }

                this.RenderPlayerChargeFX(player, count);
            }

            return(count > 0);
        }