public DragObject(TileWindow wnd, int x, int y) { _lastX = x; _lastY = y; _lastWnd = wnd; _orgWnd = wnd; bool wasOob; _orgPos = _orgWnd.GetPosition(x, y, out wasOob); if (wasOob) { throw new ArgumentOutOfRangeException(); } _selObj = _orgWnd.PieceAt(_orgPos); if (_selObj is Tile) { Bitmap img = _orgWnd.TileBitmap(_selObj as Tile); img = img.SetAlpha(curAlpha).Scale(curScale); _cur = new Cursor(img.GetHicon()); } _orgWnd.Cursor = new Selection(_selObj, _orgWnd, _orgPos); _orgWnd.AdoptCursor(); Transfer.Source = _orgWnd.Cursor; }