コード例 #1
0
        public override BaseShape CreateStaticShape(Shape shape, GenerationStrategy strategy, int lowerBoundX, int lowerBoundY, int upperBoundX, int upperBoundY)
        {
            Logging.Instance.Write("Abstract Factory -> ImpassableShapeFactory used (" + shape + ")");

            switch (shape)
            {
            case Shape.Platform:
                return(impassablePlatformBuilder
                       .Configure()
                       .ConfigureBounds(lowerBoundX, lowerBoundY, upperBoundX, upperBoundY)
                       .ConfigureGenerationStrategy(strategy)
                       .Build());

            default: throw new ArgumentException("Shape is not found");
            }
        }