예제 #1
0
        protected override bool OnEffect(Vec pos, Direction direction)
        {
            AddEffect(new Effect(pos, direction, mAttack.EffectType, mAttack.Element));

            Dungeon.HitAt(pos, this, new Hit(mNoun, mAttack, direction));

            // stop if we hit a wall
            return(!Dungeon.Tiles[pos].IsPassable);
        }
예제 #2
0
        protected override void OnEffect(Vec pos, Direction direction, bool leadingEdge)
        {
            if (leadingEdge)
            {
                AddEffect(new Effect(pos, EffectType.Ball, mAttack.Element));

                Dungeon.HitAt(pos, this, new Hit(mNoun, mAttack, direction));
            }
            else
            {
                AddEffect(new Effect(pos, EffectType.BallTrail, mAttack.Element));
            }
        }
예제 #3
0
        protected override bool OnEffect(Vec pos, Direction direction)
        {
            AddEffect(new Effect(pos, direction, mAttack.EffectType, mAttack.Element));

            return(Dungeon.HitAt(pos, this, new Hit(mNoun, mAttack, direction)));
        }