コード例 #1
0
        public override void CreateScene()
        {
            Scene = SceneMgr.CreateScene("Scene system");
            var layer = Scene.CreateLayer("Scene system");

            new SceneSystemDemo(layer);
        }
コード例 #2
0
        public override void CreateScene()
        {
            Scene = SceneMgr.CreateScene("Input");
            var layer = Scene.CreateLayer("Input");

            new InputDemo(layer);
        }
コード例 #3
0
ファイル: SceneSystemDemo.cs プロジェクト: mepurubun/Monofoxe
        public SceneSystemDemo(Layer layer) : base(layer)
        {
            // Creating new scene.
            _testScene = SceneMgr.CreateScene("SceneDemoDummy");
            var mainLayer       = _testScene.CreateLayer("main");
            var backgroundLayer = _testScene.CreateLayer("background");

            // Update and Draw events will be executed for this layer first.
            // This can be counter-intuitive, but this will put the layer on the back.
            // Because it is being drawn first, everything else will be drawn on top of it.
            backgroundLayer.Priority = 999;

            // Applying a shader to the thingy.
            backgroundLayer.PostprocessorEffects.Add(ResourceHub.GetResource <Effect>("Effects", "Seizure"));


            // See ECDemo to learn how those work.
            new Player(mainLayer, new Vector2(400, 300));

            // Player will not draw lines to these bots, because they are on a different layer.
            for (var i = 0; i < 10; i += 1)
            {
                var bot      = new Bot(backgroundLayer);
                var position = bot.GetComponent <PositionComponent>();
                position.Position = new Vector2(ECDemoFactory.Random.Next(100, 700), ECDemoFactory.Random.Next(100, 500));
            }

            // Player will draw lines to these bots, because they are on the same layer.
            for (var i = 0; i < 5; i += 1)
            {
                var bot      = new Bot(mainLayer);
                var position = bot.GetComponent <PositionComponent>();
                position.Position = new Vector2(ECDemoFactory.Random.Next(100, 700), ECDemoFactory.Random.Next(100, 500));
            }
        }
コード例 #4
0
        public override void CreateScene()
        {
            Scene = SceneMgr.CreateScene("Tiled");
            var layer = Scene.CreateLayer("Tiled");

            new TiledDemo(layer);
        }
コード例 #5
0
        public override void CreateScene()
        {
            Scene = SceneMgr.CreateScene("Utilities");
            var layer = Scene.CreateLayer("Utilities");

            new UtilsDemo(layer);
        }
コード例 #6
0
        public override void CreateScene()
        {
            Scene = SceneMgr.CreateScene("Sprites");
            var layer = Scene.CreateLayer("Sprites");

            new VertexBatchTest(layer);
        }
コード例 #7
0
        public override void CreateScene()
        {
            Scene = SceneMgr.CreateScene("Sprites");
            var layer = Scene.CreateLayer("Sprites");

            new SpriteDemo(layer);
        }
コード例 #8
0
        public static Entity WakeUp()
        {
            if (_awaken)
            {
                return(null);
            }

            Console.WriteLine("You woke up the foxe and she immediately sneaked out of sight.");
            Console.WriteLine("Maybe it wasn't such a good idea?");

            _awaken = true;

            if (!SceneMgr.TryGetScene("foxeDen", out Scene foxeDen))
            {
                foxeDen = SceneMgr.CreateScene("foxeDen");
            }

            if (!foxeDen.TryGetLayer("foxeHole", out Layer foxeRoom))
            {
                foxeRoom = foxeDen.CreateLayer("foxeHole");
            }

            new Foxe(foxeRoom);

            return(new Entity(SceneMgr.GetScene("default")["default"]));
        }
コード例 #9
0
        public override void CreateScene()
        {
            Scene = SceneMgr.CreateScene("Primitives");
            var layer = Scene.CreateLayer("Primitives");

            new PrimitiveDemo(layer);
        }
コード例 #10
0
        public override void CreateScene()
        {
            Scene = SceneMgr.CreateScene("Entity Component System");
            var layer = Scene.CreateLayer("Entity Component System");

            for (var i = 0; i < 20; i += 1)
            {
                var bot      = Entity.CreateFromTemplate(layer, "Bot");
                var position = bot.GetComponent <PositionComponent>();
                position.Position = new Vector2(Random.Next(100, 700), Random.Next(100, 500));
            }

            new Player(layer, new Vector2(400, 300));

            new ECSDemo(layer);
        }
コード例 #11
0
ファイル: ECDemoFactory.cs プロジェクト: SHHSSH/Monofoxe
        public override void CreateScene()
        {
            Scene = SceneMgr.CreateScene("Entity Component");
            var layer = Scene.CreateLayer("Entity Component");

            for (var i = 0; i < 20; i += 1)
            {
                var bot      = Entity.CreateFromTemplate(layer, "Bot");
                var position = bot.GetComponent <PositionComponent>();
                position.Position = new Vector2(Random.Next(100, 700), Random.Next(100, 500));
            }

            var player = new Player(layer, new Vector2(400, 300));

            // Now player will be drawn below all the bots, even though he was created last.
            // Reaordering puts him on the top of entity list.
            layer.ReorderEntityToTop(player);
            //layer.ReorderEntityToBottom(player); // Will have no effect.
            //layer.ReorderEntity(player, 2); // Player will be updated and drawn only after two entities above him.


            new ECDemo(layer);
        }