Ejemplo n.º 1
0
        private void AddAggressiveEnemies(int numberOfEnemies)
        {
            for (int i = 0; i < numberOfEnemies; i++)
            {
                Cell enemyCell = GetRandomEmptyCell();
                var  pathFromAggressiveEnemy = new PathToPlayer(_player, _map, Content.Load <Texture2D>("White"));
                pathFromAggressiveEnemy.CreateFrom(enemyCell.X, enemyCell.Y);

                var enemy = new AggressiveEnemy(_map, pathFromAggressiveEnemy)
                {
                    X           = enemyCell.X,
                    Y           = enemyCell.Y,
                    Sprite      = Content.Load <Texture2D>("Hound"),
                    ArmorClass  = 10,
                    AttackBonus = 0,
                    Damage      = Dice.Parse("d3"),
                    Health      = 10,
                    Name        = "Hunting Hound"
                };
                _aggressiveEnemies.Add(enemy);
            }
        }
Ejemplo n.º 2
0
        public void Update()
        {
            if (!_isAwareOfPlayer)
            {
                if (_map.IsInFov(X, Y))
                {
                    _isAwareOfPlayer = true;
                }
            }

            if (_isAwareOfPlayer)
            {
                _path.CreateFrom(X, Y);
                if (Global.CombatManager.IsPlayerAt(_path.FirstCell.X, _path.FirstCell.Y))
                {
                    Global.CombatManager.Attack(this, Global.CombatManager.FigureAt(_path.FirstCell.X, _path.FirstCell.Y));
                }
                else
                {
                    X = _path.FirstCell.X;
                    Y = _path.FirstCell.Y;
                }
            }
        }
Ejemplo n.º 3
0
        private void AddAggressiveEnemies( int numberOfEnemies )
        {
            for ( int i = 0; i < numberOfEnemies; i++ )
             {
            Cell enemyCell = GetRandomEmptyCell();
            var pathFromAggressiveEnemy = new PathToPlayer( _player, _map, Content.Load<Texture2D>( "White" ) );
            pathFromAggressiveEnemy.CreateFrom( enemyCell.X, enemyCell.Y );

            var enemy = new AggressiveEnemy("Hunting Hound", 5,5,5,5,5,5,5, _map, pathFromAggressiveEnemy ) {
               X = enemyCell.X,
               Y = enemyCell.Y,
               Sprite = Content.Load<Texture2D>( "Skeleton" ),
               ArmorClass = 10,
               AttackBonus = 0,
               Damage = new Dice( new List<IDie> { new Die( Global.Random, 3 ) } ),
               Health = 10
            };
            _aggressiveEnemies.Add( enemy );
             }
        }