Ejemplo n.º 1
0
        protected override GameObject[,] CreatePixels(PixelDescription[,] pixelsDescription)
        {
            SimplePixel[,] pixels = new SimplePixel[(int)PixelsCount.X, (int)PixelsCount.Y];

            for (int x = 0; x < PixelsCount.X; x++)
            {
                for (int y = 0; y < PixelsCount.Y; y++)
                {
                    PixelDescription pixelDescribtion = pixelsDescription[x, y];

                    if (pixelDescribtion == null)
                    {
                        continue;
                    }

                    //if ((x % 2 == 0 && y % 2 == 0) || (x % 2 == 1 && y % 2 == 1)) pixelDescribtion = new PixelDescribtion(Color.Aqua);

                    Vector2     pixelIndex = new Vector2(x, y);
                    SimplePixel pixel      = pixels[x, y] = new SimplePixel(Level,
                                                                            PixelMath.PixelToGamePosition(pixelIndex, PixelsCount), PixelOptions.PixelSize);

                    // Change pixels color according to description.
                    pixel.ColorChanger.ResetColor(pixelDescribtion.Color);
                }
            }

            return(pixels);
        }
Ejemplo n.º 2
0
        protected sealed override GameObject[,] CreatePixels(PixelDescription[,] pixelsDescription)
        {
            var pixels = new GameObject[(int)PixelsCount.X, (int)PixelsCount.Y];

            for (int x = 0; x < PixelsCount.X; x++)
            {
                for (int y = 0; y < PixelsCount.Y; y++)
                {
                    var pixelDescribtion = pixelsDescription[x, y];

                    if (pixelDescribtion == null)
                    {
                        continue;
                    }

                    var            pixelIndex = new Vector2(x, y);
                    CollisionPixel pixel;
                    pixels[x, y] = pixel = new CollisionPixel(Level, _world,
                                                              PixelMath.PixelToGamePosition(pixelIndex, PixelsCount), PixelOptions.PixelSize);
                    PixelCreated(pixel);
                    // Change pixels color according to description.
                    pixel.ColorChanger.ResetColor(pixelDescribtion.Color);

                    ConnectNeighbours(pixels, pixel, x, y);
                    SetNeighbourBorders(pixel, x, y);
                }
            }

            return(pixels);
        }
        public static Vector2 GetMiddlePosition(Vector2 leftTopIndexPosition, Vector2 basicSize, Vector2 pixelsCountInMap)
        {
            var result = PixelMath.PixelToGamePosition(leftTopIndexPosition, pixelsCountInMap) + basicSize / 2f -
                         PixelOptions.PixelSize;

            return(result);
        }