예제 #1
0
        private void setupMap()
        {
            var sysManager = Core.getGlobalManager <SystemManager>();
            var mapId      = sysManager.MapId;

            _tiledMap = content.Load <TiledMap>($"maps/map{mapId}");
            sysManager.setTiledMapComponent(_tiledMap);

            var tiledEntity    = createEntity("tiledMap");
            var collisionLayer = _tiledMap.properties["collisionLayer"];
            var defaultLayers  = _tiledMap.properties["defaultLayers"].Split(',').Select(s => s.Trim()).ToArray();

            _tiledMapComponent = tiledEntity.addComponent(new TiledMapComponent(_tiledMap, collisionLayer)
            {
                renderLayer = TILED_MAP_RENDER_LAYER
            });
            _tiledMapComponent.setLayersToRender(defaultLayers);

            if (_tiledMap.properties.ContainsKey("aboveWaterLayer"))
            {
                var aboveWaterLayer = _tiledMap.properties["aboveWaterLayer"];
                var tiledAboveWater = tiledEntity.addComponent(new TiledMapComponent(_tiledMap)
                {
                    renderLayer = WATER_RENDER_LAYER
                });
                tiledAboveWater.setLayerToRender(aboveWaterLayer);
            }

            Core.getGlobalManager <SystemManager>().setTiledMapComponent(_tiledMap);
        }
예제 #2
0
        public void blockPassage()
        {
            var layersToRender = _tiledMap.properties["defaultLayers"].Split(',').Select(s => s.Trim()).ToList();

            layersToRender.Add("bossBlock");
            _tiledMapComponent.setLayersToRender(layersToRender.ToArray());

            MediaPlayer.Play(AudioManager.hitman);
        }
예제 #3
0
        protected void createTileMap(string mapName)
        {
            Entity            tiledEntity       = createEntity("tiled-map-entity");
            TiledMap          tiledMap          = this.content.Load <TiledMap>("Maps/" + mapName);
            TiledMapComponent tiledMapComponent = tiledEntity.addComponent(new TiledMapComponent(tiledMap, "Collisions"));

            tiledMapComponent.setLayersToRender(new string[] { "Ground", "Walls", "Details" });
            tiledMapComponent.renderLayer = 10;

            TiledMapComponent tiledMapDetailsComp = tiledEntity.addComponent(new TiledMapComponent(tiledMap));

            tiledMapDetailsComp.setLayerToRender("Above-Details");
            tiledMapDetailsComp.renderLayer = -1;

            List <TiledObjectGroup> tiledObjects = tiledMap.objectGroups;

            tiledEntity      = TransitionManager.attachTransitionColliders(tiledObjects, tiledEntity, mapName);
            this.PlayerSpawn = TransitionManager.findPlayerSpawn(tiledObjects, PrevMapName);

            tiledMapDetailsComp.material        = Material.stencilWrite();
            tiledMapDetailsComp.material.effect = this.content.loadNezEffect <SpriteAlphaTestEffect>();
        }
예제 #4
0
        private void setupMap()
        {
            var background = createEntity("map-background");
            var texture    = content.Load <Texture2D>(Content.Maps.background);

            _backgroundSprite = background.addComponent(new Sprite(texture)
            {
                renderLayer = BACKGROUND_RENDER_LAYER
            });
            background.position = (virtualSize.ToVector2() / 2);

            var sysManager = Core.getGlobalManager <SystemManager>();

            _tiledMap = content.Load <TiledMap>("maps/map");
            sysManager.setTiledMapComponent(_tiledMap);

            var tiledEntity    = createEntity("tiled-map");
            var collisionLayer = _tiledMap.properties["collisionLayer"];
            var defaultLayers  = _tiledMap.properties["defaultLayers"].Split(',').Select(s => s.Trim()).ToArray();

            _tiledMapComponent = tiledEntity.addComponent(new TiledMapComponent(_tiledMap, collisionLayer)
            {
                renderLayer = TILED_MAP_RENDER_LAYER
            });
            _tiledMapComponent.setLayersToRender(defaultLayers);

            if (_tiledMap.properties.ContainsKey("aboveWaterLayer"))
            {
                var aboveWaterLayer = _tiledMap.properties["aboveWaterLayer"];
                var tiledAboveWater = tiledEntity.addComponent(new TiledMapComponent(_tiledMap)
                {
                    renderLayer = WATER_RENDER_LAYER
                });
                tiledAboveWater.setLayerToRender(aboveWaterLayer);
            }
        }
        private void setupMap()
        {
            _tiledMap = content.Load <TiledMap>("maps/map");

            var tiledEntity    = createEntity("tiled-map");
            var collisionLayer = _tiledMap.properties["collisionLayer"];
            var defaultLayers  = _tiledMap.properties["defaultLayers"].Split(',').Select(s => s.Trim()).ToArray();

            _tiledMapComponent = tiledEntity.addComponent(new TiledMapComponent(_tiledMap, collisionLayer)
            {
                renderLayer = GlobalConstants.TILED_MAP_RENDER_LAYER
            });
            _tiledMapComponent.setLayersToRender(defaultLayers);

            if (_tiledMap.properties.ContainsKey("aboveWaterLayer"))
            {
                var aboveWaterLayer = _tiledMap.properties["aboveWaterLayer"];
                var tiledAboveWater = tiledEntity.addComponent(new TiledMapComponent(_tiledMap)
                {
                    renderLayer = GlobalConstants.WATER_RENDER_LAYER
                });
                tiledAboveWater.setLayerToRender(aboveWaterLayer);
            }
        }