handlerPointerMove method
Implementation
@override
void handlerPointerMove(PointerMoveEvent event) {
final pointer = event.pointer;
final position = event.localPosition;
bool canMove = hasGameRef &&
_startDragPosition != null &&
enableDrag &&
pointer == _pointer;
if (canMove) {
if (this.isHud) {
this.position = Rect.fromLTWH(
_startDragPosition!.left + (position.dx - _startDragOffset!.dx),
_startDragPosition!.top + (position.dy - _startDragOffset!.dy),
_startDragPosition!.width,
_startDragPosition!.height,
).toVector2Rect();
} else {
final absolutePosition = this.gameRef.screenPositionToWorld(position);
this.position = Rect.fromLTWH(
_startDragPosition!.left +
(absolutePosition.dx - _startDragOffset!.dx),
_startDragPosition!.top +
(absolutePosition.dy - _startDragOffset!.dy),
_startDragPosition!.width,
_startDragPosition!.height,
).toVector2Rect();
}
inMoving = true;
onMoveDrag(pointer, position);
}
super.handlerPointerMove(event);
}