示例#1
0
        public void PositionEnemyForStart(BaseEnemy enemy)
        {
            Road first = Roads.FirstOrDefault();

            if (first.Direction == Directions.Right)
                enemy.Center = new PointF(Start.X + 0.1F, Start.Y + RoadThickness / 2);
            else if (first.Direction == Directions.Left)
                enemy.Center = new PointF(Start.X + 0.1F, Start.Y + RoadThickness / 2);
            else if (first.Direction == Directions.Down)
                enemy.Center = new PointF(Start.X + RoadThickness / 2, Start.Y + 0.1F);
            else if (first.Direction == Directions.Up)
                enemy.Center = new PointF(Start.X + RoadThickness / 2, Start.Y + 0.1F);
        }
 public void GivenSonicTowerFiresABulletToTargetOne()
 {
     tower = new SonicTower() { Center = new PointF(0, 0), FireDelayMilis = 1000, Placed = true, Active = true };
     enemy1 = new GroundEnemy(1.3F, 1, 1, null) { Center = new PointF(0, range), Height = 10, Width = 10};
     bullet = tower.Fire(enemy1);
 }
示例#3
0
        public virtual BaseBullet Fire(BaseEnemy enemy)
        {
            if (enemy != null)
            {
                LastFiredMilis = DateTime.Now;
                BaseBullet bullet = CreateBullet(Center, enemy.Center);
                Angle = bullet.Angle;
                return bullet;
            }

            return null;
        }