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)); //} }
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); }
/// <summary> /// 餌を定期的に追加 /// </summary> /// <returns></returns> private void FoodAdd(GameTime gameTime) { if (foodAddInterval <= foodAddCount) { GameObjectManager.Add(new Food(gameManager)); foodAddCount = 0; } foodAddCount += gameTime.ElapsedGameTime.Milliseconds; }
/// <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; }
/// <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)); } }