LynnaLab.ObjectData.SetX C# (CSharp) Method

SetX() public method

public SetX ( int n ) : void
n int
return void
        public void SetX(int n)
        {
            if (HasShortenedXY())
                n /= 16;
            SetValue("X", n);
        }

Usage Example

コード例 #1
0
ファイル: RoomEditor.cs プロジェクト: turbo3001/LynnaLab
        void OnDragged(int x, int y)
        {
            if (!ViewObjects)
            {
                OnClicked(x, y);
            }
            else
            {
                if (!draggingObject)
                {
                    return;
                }

                ObjectData data = objectEditor.SelectedObjectData;
                if (data != null && data.HasXY())
                {
                    int newX, newY;
                    if (gdkState.HasFlag(Gdk.ModifierType.ControlMask) || data.HasShortenedXY())
                    {
                        newX = x - XOffset;
                        newY = y - XOffset;
                    }
                    else
                    {
                        // Move objects in increments of 8 pixels
                        int unit    = 8;
                        int unitLog = (int)Math.Log(unit, 2);

                        int dataX  = data.GetX() + unit / 2;
                        int dataY  = data.GetY() + unit / 2;
                        int alignX = (dataX) % unit;
                        int alignY = (dataY) % unit;
                        newX = (x - XOffset - alignX) >> unitLog;
                        newY = (y - YOffset - alignY) >> unitLog;
                        newX = newX * unit + alignX + unit / 2;
                        newY = newY * unit + alignY + unit / 2;
                    }

                    if (newX >= 0 && newX < 256 && newY >= 0 && newY < 256)
                    {
                        data.SetX((byte)newX);
                        data.SetY((byte)newY);
                    }

                    QueueDraw();
                }
            }
        }
All Usage Examples Of LynnaLab.ObjectData::SetX