コード例 #1
0
ファイル: Ball.cs プロジェクト: dartNNN/Arcanoid
        public override void Collided(BaseUnit baseUnit)
        {
            double angle       = CollisionChecker.GetAngle(_angle, _lastPosition, this, baseUnit);
            double randomAngle = new Random().NextDouble() / 10;
            int    sign        = new Random().Next() % 2 == 0 ? -1 : 1;

            _angle = angle + sign * randomAngle;
        }
コード例 #2
0
        //public bool IsFlying { get; set; }
        //public override Point Position { get; set; }
        //public new int Width { get; set; }
        //public new int Height { get; set; }

        #endregion

        #region Public Methods

        public override void Collided(BaseUnit baseUnit)
        {
            if (baseUnit.UnitType == UnitType.Player)
            {
                IsFlying = false;
            }

            if (baseUnit.UnitType != UnitType.Bonus)
            {
                double angle       = CollisionChecker.GetAngle(_angle, _lastPosition, this, baseUnit);
                double randomAngle = new Random().NextDouble() / 10;
                int    sign        = new Random().Next() % 2 == 0 ? -1 : 1;
                _angle = angle + sign * randomAngle;
            }
        }