public void Update() {
if (!listening) return;
if (DesignatorManager.SelectedDesignator != invokingDesignator) {
listening = false;
return;
}
if(!draggerActive && DesignatorManager.Dragger.Dragging) {
mouseDownPosition = Gen.MouseCell();
draggerActive = true;
} else if (draggerActive && !DesignatorManager.Dragger.Dragging) {
draggerActive = false;
}
if (draggerActive) {
var mouseCell = Gen.MouseCell();
UpdateAffectedCellsInRect(mouseDownPosition, mouseCell);
DrawOverlayOnCells(affectedCells);
}
}