public ChaserGameObject(String imageName, Vector2 position, Vector2 size, TexturedPrimitive target) : base(imageName, position, size, null)
 {
     Target      = target;
     mHomeInRate = 0.05f;
     mHitTarget  = false;
     mSpeed      = 0.1f;
 }
Example #2
0
        public MyGame()
        {
            //hero
            mHero = new TexturedPrimitive("Me", kHeroPosition, kHeroSize);

            //basketballs
            mCreationTimeSpan = new TimeSpan(0);
            mBBallList        = new List <BasketBall>();
        }
Example #3
0
        /// <summary>
        /// LoadContent will be called once per game and is the place to load
        /// all of your content.
        /// </summary>
        protected override void LoadContent()
        {
            // Create a new SpriteBatch, which can be used to draw textures.
            Game1.sSpriteBatch = new SpriteBatch(GraphicsDevice);

            //create the primitives
            mGraphicsObjects    = new TexturedPrimitive[kNumObjects];
            mGraphicsObjects[0] = new TexturedPrimitive("UWB-JPG", new Vector2(10, 10), new Vector2(30, 30));
            mGraphicsObjects[1] = new TexturedPrimitive("UWB-JPG", new Vector2(200, 200), new Vector2(100, 100));
            mGraphicsObjects[2] = new TexturedPrimitive("UWB-PNG", new Vector2(50, 10), new Vector2(30, 30));
            mGraphicsObjects[3] = new TexturedPrimitive("UWB-PNG", new Vector2(50, 200), new Vector2(100, 100));
        }
Example #4
0
        //detetar colisões com os limites do ecrã
        static public CameraWindowCollisionStatus CollidedWithCameraWindow(TexturedPrimitive prim)
        {
            Vector2 min = CameraWindowLowerLeftPosition;
            Vector2 max = CameraWindowUpperRightPosition;

            if (prim.MaxBound.Y > max.Y)
            {
                return(CameraWindowCollisionStatus.CollideTop);
            }
            if (prim.MinBound.X < min.X)
            {
                return(CameraWindowCollisionStatus.CollideLeft);
            }
            if (prim.MaxBound.X > max.X)
            {
                return(CameraWindowCollisionStatus.CollideRight);
            }
            if (prim.MinBound.Y < min.Y)
            {
                return(CameraWindowCollisionStatus.CollideBottom);
            }
            return(CameraWindowCollisionStatus.InsideWindow);
        }
Example #5
0
        public void UpdateGame(GameTime gameTime)
        {
            #region step a
            if (null != mFinal)     //done
            {
                return;
            }
            #endregion step a

            #region steb b
            //hero movement : right thumb stic
            mHero.Update(InputWrapper.ThumbSticks.Right);

            //basketball
            for (int b = mBBallList.Count - 1; b >= 0; b--)
            {
                if (mBBallList[b].UpdateAndExplode())
                {
                    mBBallList.RemoveAt(b);
                    mBBallMissed++;
                    mScore += kBallMissedScore;
                }
            }
            #endregion step b

            #region step c
            for (int b = mBBallList.Count - 1; b >= 0; b--)
            {
                if (mHero.PrimitiveTouches(mBBallList[b]))
                {
                    mBBallList.RemoveAt(b);
                    mBBallHit++;
                    mScore += kBallTouchScore;
                }
            }
            #endregion step c

            #region step d
            //check for new basketball condition
            TimeSpan timePassed = gameTime.TotalGameTime;
            timePassed = timePassed.Subtract(mCreationTimeSpan);
            if (timePassed.TotalMilliseconds > kBallMSecInterval)
            {
                mCreationTimeSpan = gameTime.TotalGameTime;
                BasketBall b = new BasketBall();
                mTotalBallCreated++;
                mBBallList.Add(b);
            }
            #endregion stepd

            #region step e
            //check for winning condition ...
            if (mScore > kWinScore)
            {
                mFinal = new TexturedPrimitive("Winner", new Vector2(75, 50), new Vector2(30, 20));
            }
            else if (mScore < kWinScore)
            {
                mFinal = new TexturedPrimitive("Loser", new Vector2(75, 50), new Vector2(30, 20));
            }
            #endregion step e
        }