Terrarium.Game.WorldState.FindOrganisms C# (CSharp) Method

FindOrganisms() public method

Find organisms with the given rectangular area.
public FindOrganisms ( int x1, int x2, int y1, int y2 ) : ArrayList
x1 int Part of the location rectangle.
x2 int Part of the location rectangle.
y1 int Part of the location rectangle.
y2 int Part of the location rectangle.
return System.Collections.ArrayList
        public ArrayList FindOrganisms(int x1, int x2, int y1, int y2)
        {
            int minX, maxX, minY, maxY;
            if (x1 < x2)
            {
                minX = x1;
                maxX = x2;
            }
            else
            {
                minX = x2;
                maxX = x1;
            }

            if (y1 < y2)
            {
                minY = y1;
                maxY = y2;
            }
            else
            {
                minY = y2;
                maxY = y1;
            }

            if (minX < 0)
            {
                minX = 0;
            }
            if (maxX < 0)
            {
                maxX = 0;
            }
            if (minY < 0)
            {
                minY = 0;
            }
            if (maxY < 0)
            {
                maxY = 0;
            }

            minX >>= EngineSettings.GridWidthPowerOfTwo;
            if (minX > _gridWidth - 1)
            {
                minX = _gridWidth - 1;
            }

            maxX >>= EngineSettings.GridWidthPowerOfTwo;
            if (maxX > _gridWidth - 1)
            {
                maxX = _gridWidth - 1;
            }

            minY >>= EngineSettings.GridHeightPowerOfTwo;
            if (minY > _gridHeight - 1)
            {
                minY = _gridHeight - 1;
            }

            maxY >>= EngineSettings.GridHeightPowerOfTwo;
            if (maxY > _gridHeight - 1)
            {
                maxY = _gridHeight - 1;
            }

            return FindOrganismsInCells(minX, maxX, minY, maxY);
        }