NScumm.Scumm.ScummEngine6.EnqueueObject C# (CSharp) Метод

EnqueueObject() защищенный Метод

protected EnqueueObject ( int objectNumber, int objectX, int objectY, int objectWidth, int objectHeight, int scaleX, int scaleY, int image, int mode ) : void
objectNumber int
objectX int
objectY int
objectWidth int
objectHeight int
scaleX int
scaleY int
image int
mode int
Результат void
        protected void EnqueueObject(int objectNumber, int objectX, int objectY, int objectWidth,
                                     int objectHeight, int scaleX, int scaleY, int image, int mode)
        {
            if (_blastObjectQueuePos >= _blastObjectQueue.Length)
            {
                throw new InvalidOperationException("enqueueObject: overflow");
            }

            var idx = GetObjectIndex(objectNumber);
            Debug.Assert(idx >= 0, "Object index should be positive");

            var left = objectX;
            var top = objectY + ScreenTop;
            int right;
            int bottom;
            if (objectWidth == 0)
            {
                right = left + _objs[idx].Width;
            }
            else
            {
                right = left + objectWidth;
            }
            if (objectHeight == 0)
            {
                bottom = top + _objs[idx].Height;
            }
            else
            {
                bottom = top + objectHeight;
            }

            var eo = _blastObjectQueue[_blastObjectQueuePos++];
            eo.Number = objectNumber;
            eo.Rect = new Rect(left, top, right, bottom);
            eo.ScaleX = scaleX;
            eo.ScaleY = scaleY;
            eo.Image = image - 1;
            eo.Mode = mode;
        }
ScummEngine6