Exemplo n.º 1
0
        private void Initialize(BuildingDataset dataset)
        {
            if (dataset != null)
            {
                texture = game.Content.Load <Texture2D>(Path.Combine(@"Buildings", dataset.AssetName));
                size    = dataset.Size;
                color   = Color.White;
                Doors   = new Door[dataset.Doors.Length];

                for (int doorIndex = 0; doorIndex < dataset.Doors.Length; doorIndex++)
                {
                    var  doorDataset = dataset.Doors[doorIndex];
                    Door door        = new Door(game, this, doorDataset, mapContainedIn);
                    Doors[doorIndex] = door;
                }

                world.WorldObjects.AddGameObjects(Doors);
            }
            else
            {
                Doors   = new Door[0];
                size    = new Size(128, 64);
                texture = KhvGame.Temp;
                color   = Color.Brown;
            }

            Collider = new BoxCollider(world, this);

            MapLocator mapLocator;

            Components.AddComponent(mapLocator = new MapLocator(world, this, mapContainedIn));
            mapLocator.ContainingMapActive    += new MapLocatorEventHandler(mapLocator_ContainedMapActive);
            mapLocator.ContainingMapChanged   += new MapLocatorEventHandler(mapLocator_ContainedMapChanged);
        }
Exemplo n.º 2
0
        private void InitializeLocator()
        {
            MapLocator mapLocator = new MapLocator(world, this, MapContainedIn);

            mapLocator.ContainingMapActive  += new MapLocatorEventHandler(mapLocator_ContainingMapActive);
            mapLocator.ContainingMapChanged += new MapLocatorEventHandler(mapLocator_ContainingMapChanged);
            Components.AddComponent(mapLocator);
        }