Esempio n. 1
0
 public void HideVectorComponents()
 {
     mStart.RemoveFromAutoDrawSet();
     mVec.RemoveFromAutoDrawSet();
     mTangent.RemoveFromAutoDrawSet();
     mNormal.RemoveFromAutoDrawSet();
 }
Esempio n. 2
0
 public void RemoveAllFromDraw()
 {
     mStart.RemoveFromAutoDrawSet();
     mVec.RemoveFromAutoDrawSet();
     mVecInX.RemoveFromAutoDrawSet();
     mVecInY.RemoveFromAutoDrawSet();
 }
Esempio n. 3
0
        protected override void UpdateWorld()
        {
            if (GamePad.ButtonBackClicked())
            {
                Exit();
            }

            #region change speed by inc/dec time for travelling
            mSecondsToTravel += GamePad.ThumbSticks.Right.Y;
            if (mSecondsToTravel <= 0f)
            {
                mSecondsToTravel = 0.1f;
            }
            #endregion

            #region recompute new speed for ball
            if (GamePad.ButtonAClicked())
            {
                ComputeBallSpeed();
                mBall.AddToAutoDrawSet();
                ResetBallShootInfo();
            }
            #endregion

            #region recompute new velocity direction for ball
            if (GamePad.ButtonBClicked())
            {
                GenerateRandomBallVelocityDirection();
                ResetBallShootInfo();
                mBall.TopOfAutoDrawSet();
            }
            #endregion

            #region determine if should contiune to draw the ball
            if (mBall.IsInAutoDrawSet())
            {
                Vector2 delta = mBall.Center - kInitPosition;
                mDistanceTravelled = delta.Length();

                if (mDistanceTravelled > kDistanceCovered)
                {
                    mBall.RemoveFromAutoDrawSet();
                }
                else
                {
                    mUpdatesSinceShoot++;
                }
            }
            #endregion

            EchoToTopStatus("Ball velocity:" + mBall.Velocity + "  position:" + mBall.Center);
            EchoToBottomStatus("Travel across " + kDistanceCovered + " units in: " + mSecondsToTravel + " seconds"
                               + " UpdatesSinceShoot(" + mUpdatesSinceShoot + ")");
        }
Esempio n. 4
0
        public Explosion(Hero h, Enemy e)
        {
            splash         = new XNACS1Circle(e.getPosition().Center, splashRadius);
            timer          = new Timer(duration);
            splash.Color   = h.getColor();
            splash.Visible = false;
            splash.RemoveFromAutoDrawSet();

            emitter = new ExplosionEmitter(e.getPosition().Center, duration, 0.6f, h.getColor());
            emitter.DrawHalo(20);
            emitter.AutoRemoveDeadParticles = true;
        }
Esempio n. 5
0
        protected override void InitializeWorld()
        {
            World.SetWorldCoordinate(new Vector2(-5f, 0f), kDistanceCovered + kUnits);

            // Create the road mile posts ...
            for (int i = 0; i < kUnits; i++)
            {
                int             centerX = (i * kUnits) + (kUnits / 2);
                XNACS1Rectangle r       = new XNACS1Rectangle(new Vector2((float)centerX, kRoadY), kUnits, 1);
                r.Color = kRoadColor[i];
                r.Label = centerX.ToString();
            }

            mBall = new XNACS1Circle(new Vector2(kDistanceCovered + 1f, kRoadY), 2f);
            mBall.ShouldTravel = true;
            mBall.RemoveFromAutoDrawSet();
        }
Esempio n. 6
0
        protected override void InitializeWorld()
        {
            World.SetWorldCoordinate(new Vector2(-kWorldSize, -kWorldSize * (9f / 16f)), (2f * kWorldSize));

            mRoad = new XNACS1Rectangle[10];
            // Create the road mile posts ...
            for (int i = 0; i < kUnits; i++)
            {
                mRoad[i]       = new XNACS1Rectangle(kInitPosition, kUnits, kRoadWidth);
                mRoad[i].Color = kRoadColor[i];
                mRoad[i].Label = ((i * kUnits) + (kUnits / 2)).ToString();
            }

            mBall = new XNACS1Circle(kInitPosition, 2f);
            mBall.ShouldTravel = true;
            mBall.RemoveFromAutoDrawSet();
            mDistanceTravelled = kWorldSize * 2f;

            GenerateRandomBallVelocityDirection();
            ComputeBallSpeed();
        }
Esempio n. 7
0
        protected override void UpdateWorld()
        {
            if (GamePad.ButtonBackClicked())
            {
                Exit();
            }

            #region change speed by inc/dec time for travelling
            mSecondsToTravel += GamePad.ThumbSticks.Right.Y;
            if (mSecondsToTravel <= 0f)
            {
                mSecondsToTravel = 0.1f;
            }
            #endregion

            #region re-compute ball speed
            if (GamePad.ButtonAClicked())
            {
                ComputeBallSpeed();
                mUpdatesSinceShoot = 0;
                mBall.CenterX      = 0f;
                mBall.AddToAutoDrawSet();
            }
            #endregion

            #region continue to draw the ball?
            if (mBall.CenterX > kDistanceCovered)
            {
                mBall.RemoveFromAutoDrawSet();
            }
            else
            {
                mUpdatesSinceShoot++;
            }
            #endregion

            EchoToTopStatus("Ball position: " + mBall.CenterX);
            EchoToBottomStatus("Travel across 100 units in: " + mSecondsToTravel + " seconds"
                               + " UpdatesSinceShoot(" + mUpdatesSinceShoot + ")");
        }
Esempio n. 8
0
 protected void PlotFunction()
 {
     mPlotSet.RemoveAllFromSet();
     mPlotDist = mPlotBox.Width / kNumPlotPoints;
     for (float xDist = 0f; xDist < mPlotBox.Width; xDist += mPlotDist)
     {
         float        nextY = GetYValue(xDist);
         Vector2      p     = mPlotBox.GetBoxPosition(xDist, nextY);
         XNACS1Circle c     = new XNACS1Circle(p, kPlotPtRatio * mPlotDist);
         if (mPlotBox.Collided(c))
         {
             mPlotSet.AddToSet(c);
         }
         else
         {
             c.RemoveFromAutoDrawSet();
         }
     }
     mTravel.TopOfAutoDrawSet();
     if (!mShowPlots)
     {
         mPlotSet.RemoveAllFromAutoDrawSet();
     }
 }
Esempio n. 9
0
 public void DestroyBall()
 {
     mBall.RemoveFromAutoDrawSet();
     mBall = null;
 }
Esempio n. 10
0
 public void DestroyTarget()
 {
     m_Target.RemoveFromAutoDrawSet();
     m_Target = null;
 }