Ejemplo n.º 1
0
        /// <summary>
        /// LoadContent will be called once per game and is the place to load
        /// all of your content.
        /// </summary>
        protected override void LoadContent()
        {
            MDraw.LoadContent();

            quickTest.LoadContent();

            var grass    = Content.Load <Texture2D>("Images/Tiles/grass");
            var dirt     = Content.Load <Texture2D>("Images/Tiles/dirt");
            var deepDirt = Content.Load <Texture2D>("Images/Tiles/deep_dirt");
            var temple   = Content.Load <Texture2D>("Images/Tiles/temple");
            var player   = Content.Load <Texture2D>("Images/Tiles/player");


            /*
             * new DebugTestPhysics(CurrentScene);
             * //*/


            //*

            //new TestActor(CurrentScene, new Vector2(0, 0), temple);

            //new TestSolid(CurrentScene, grass, new Vector2(2, 0), new Vector2(1, 1));

            //new TestSolidDrift(CurrentScene, grass, new Vector2(5, 0), new Vector2(2, 2));

            for (int x = -9; x <= 9; x++)
            {
                new TestSolidStatic(CurrentScene, deepDirt, new Vector2(x, 5), new Vector2(1, 1));
            }

            new TestSolidStatic(CurrentScene, deepDirt, new Vector2(6, 3), new Vector2(1, 1));
            new TestSolidStatic(CurrentScene, deepDirt, new Vector2(6, 2), new Vector2(1, 1));
            new TestSolidStatic(CurrentScene, deepDirt, new Vector2(6, 1), new Vector2(1, 1));

            //new TestSolid(CurrentScene, grass, new Vector2(1, 2), new Vector2(1, 1));
            //new TestSolid(CurrentScene, grass, new Vector2(2, 1), new Vector2(1, 1));
            //new TestSolid(CurrentScene, grass, new Vector2(2, 0), new Vector2(1, 1));
            //new TestSolid(CurrentScene, grass, new Vector2(4, 2), new Vector2(1, 1));
            //new TestSolid(CurrentScene, grass, new Vector2(4, 1), new Vector2(1, 1));
            //new TestSolid(CurrentScene, grass, new Vector2(4, 0), new Vector2(1, 1));

            for (int x = 0; x < 3; x++)
            {
                for (int y = 0; y < 3; y++)
                {
                    //new TestSolid(CurrentScene, grass, new Vector2(-5 + x, 0 + y), new Vector2(1, 1));
                }
            }

            //*/

            CurrentScene.Init();
            Time.Init();
        }
Ejemplo n.º 2
0
        public void Update(GameTime gameTime)
        {
            Performance.Push("Game loop");

            InputManager.UpdateInput(gameTime);

            lock (lockObj)
            {
                if (NextScene != null)
                {
                    if (CurrentScene != null)
                    {
                        CurrentScene.Close();
                    }

                    CurrentScene = NextScene;
                    if (CurrentScene != null)
                    {
                        CurrentScene.Init(this);
                    }

                    NextScene = null;
                }

                if (CurrentScene != null)
                {
                    if (CurrentScene.MouseCursor != null)
                    {
                        CurrentScene.MouseCursor.Position = InputManager.MousePosition;
                    }

                    CurrentScene.Update(gameTime);
                }
            }

            Performance.Pop();
        }
 /// <summary>
 /// 指定したシーンに遷移する
 /// </summary>
 /// <param name="sceneName">AddSceneで指定したシーンの名前</param>
 public static void ChangeScene(SceneName sceneName)
 {
     CurrentScene = Scenes[sceneName];
     CurrentScene.Init(Data);
 }