Ejemplo n.º 1
0
        private void PopulateSpecialRoom(Scene scene, Zone zone, Vector3 roomCenter, PopulateSchemeFlags flags, ref PopulateRoomResults results)
        {
            int rng = rand.Next(8);

            if (flags.ClearPerimeter)
            {
                if (rng == 7)
                {
                    SceneStructures.Arena(WallTexture)(scene, zone, roomCenter);
                }
            }
            if (flags.ClearFloor)
            {
                if (rng < 7 || !flags.ClearPerimeter)
                {
                    results.GenerateFloor = false;
                    SceneStructures.Pit(FloorTexture, WallTexture)(scene, zone, roomCenter);
                    SceneStructures.PitFloor(Assets.iceTexture)(scene, zone, roomCenter);

                    if (rng < 3 && flags.ClearCenter)
                    {
                        SceneStructures.PitPillar(WallTexture)(scene, zone, roomCenter);
                    }
                }
            }

            if (rand.Next(2) == 0)
            {
                SceneStructures.IceCutCorners(Assets.iceTexture)(scene, zone, roomCenter);
            }
        }
        private void PopulateSpecialRoom(Scene scene, Zone zone, Vector3 roomCenter, PopulateSchemeFlags flags, ref PopulateRoomResults results)
        {
            int rng = rand.Next(6);

            if (flags.ClearPerimeter)
            {
                if (rng == 0 || rng == 1)
                {
                    SceneStructures.Arena(WallTexture)(scene, zone, roomCenter);
                }
            }
            if (flags.ClearFloor)
            {
                if (rng == 2 || rng == 3)
                {
                    results.GenerateFloor = false;
                    SceneStructures.Pit(FloorTexture, WallTexture)(scene, zone, roomCenter);

                    if (rng == 3 && flags.ClearCenter)
                    {
                        SceneStructures.PitPillar(WallTexture)(scene, zone, roomCenter);
                    }
                }
            }
        }