Example #1
0
        public override void Initialize()
        {
            nextScene = SceneID.GameOver;
            isEnd     = false;

            GameObjectManager.Add(new Ranking(gameManager));

            player = (Player)GameObjectManager.Add(new Player(gameManager));

            // エネミーを生成
            for (int i = 0; i < 60; i++)
            {
                GameObjectManager.Add(new Enemy(gameManager));
            }

            // 餌を生成
            for (int i = 0; i < 200; i++)
            {
                GameObjectManager.Add(new Food(gameManager));
            }

            //// 針を生成
            //for(int i = 0; i < 5; i++)
            //{
            //    GameObjectManager.Add(new Needle(gameManager));
            //}
        }
Example #2
0
        public override void Initialize()
        {
            nextScene = SceneID.GamePlay;
            isEnd     = false;

            // エネミーを30体出す
            for (int i = 0; i < 60; i++)
            {
                GameObjectManager.Add(new Enemy(gameManager));
            }

            // 餌を300個数
            for (int i = 0; i < 300; i++)
            {
                GameObjectManager.Add(new Food(gameManager));
            }

            //// 針を5個設置
            //for (int i = 0; i < 20; i++)
            //{
            //    GameObjectManager.Add(new Needle(gameManager));
            //}

            Camera.Position = Screen.MapHalf;

            Camera.Zoom = new Vector2(0.5f);
        }
Example #3
0
 /// <summary>
 /// 餌を定期的に追加
 /// </summary>
 /// <returns></returns>
 private void FoodAdd(GameTime gameTime)
 {
     if (foodAddInterval <= foodAddCount)
     {
         GameObjectManager.Add(new Food(gameManager));
         foodAddCount = 0;
     }
     foodAddCount += gameTime.ElapsedGameTime.Milliseconds;
 }
Example #4
0
 /// <summary>
 /// エネミーが一定時間ごとに追加される処理
 /// </summary>
 /// <param name="gameTime"></param>
 private void EnemyAdd(GameTime gameTime)
 {
     // エネミーが一定時間で追加される
     if (enemyAddInterval <= enemyAddCount)
     {
         GameObjectManager.Add(new Enemy(gameManager));
         enemyAddCount = 0;
     }
     // カウンタ
     enemyAddCount += gameTime.ElapsedGameTime.Milliseconds;
 }
Example #5
0
        /// <summary>
        /// プレイヤーがスペースキーを押したときに分裂する処理
        /// </summary>
        protected void Division(ref Vector2 futureScale, ref Vector2 currentScale, Vector2 position)
        {
            // スペースが押されたら && 大きさが2以上
            if (input.IsKeyDown(Keys.Space) && currentScale.X > 2f && GameObjectManager.FindAll(CharacterID.Player).Count < 8)
            {
                // 分裂すると大きさが半分になる
                currentScale /= 2;
                futureScale  /= 2;

                // 大きさが1を下回ったら1を代入(大きさが1より下に行かないように)
                if (currentScale.X < 1f)
                {
                    currentScale = new Vector2(1f);
                    futureScale  = currentScale;
                }
                GameObjectManager.Add(new DivisionPlayer(currentScale, radius, Speed(speed, currentScale.X), position, gameManager));
            }
        }