public void ProcessInputEvents()
        {
            if (this.CheckSelectedDesignatorValid())
            {
                if (Event.current.type == EventType.MouseDown && Event.current.button == 0)
                {
                    if (this.selectedDesignator.DraggableDimensions == 0)
                    {
                        Designator       designator       = this.selectedDesignator;
                        AcceptanceReport acceptanceReport = this.selectedDesignator.CanDesignateCell(UI.MouseCell());
                        if (acceptanceReport.Accepted)
                        {
                            designator.DesignateSingleCell(UI.MouseCell());
                            designator.Finalize(true);
                        }
                        else
                        {
                            Messages.Message(acceptanceReport.Reason, MessageTypeDefOf.SilentInput);
                            this.selectedDesignator.Finalize(false);
                        }
                    }
                    else
                    {
                        this.dragger.StartDrag();
                    }
                    Event.current.Use();
                }
                if (Event.current.type == EventType.MouseDown && Event.current.button == 1)
                {
                    goto IL_00ec;
                }
                if (Event.current.type == EventType.KeyDown && Event.current.keyCode == KeyCode.Escape)
                {
                    goto IL_00ec;
                }
                goto IL_0121;
            }
            return;

IL_00ec:
            SoundDefOf.CancelMode.PlayOneShotOnCamera(null);
            this.Deselect();
            this.dragger.EndDrag();
            Event.current.Use();
            TutorSystem.Notify_Event("ClearDesignatorSelection");
            goto IL_0121;
IL_0121:
            if (Event.current.type == EventType.MouseUp && Event.current.button == 0 && this.dragger.Dragging)
            {
                this.selectedDesignator.DesignateMultiCell(this.dragger.DragCells);
                this.dragger.EndDrag();
                Event.current.Use();
            }
        }
Example #2
0
 public void ProcessInputEvents()
 {
     if (!CheckSelectedDesignatorValid())
     {
         return;
     }
     if (Event.current.type == EventType.MouseDown && Event.current.button == 0)
     {
         if (selectedDesignator.DraggableDimensions == 0)
         {
             Designator       designator       = selectedDesignator;
             AcceptanceReport acceptanceReport = selectedDesignator.CanDesignateCell(UI.MouseCell());
             if (acceptanceReport.Accepted)
             {
                 designator.DesignateSingleCell(UI.MouseCell());
                 designator.Finalize(somethingSucceeded: true);
             }
             else
             {
                 Messages.Message(acceptanceReport.Reason, MessageTypeDefOf.SilentInput, historical: false);
                 selectedDesignator.Finalize(somethingSucceeded: false);
             }
         }
         else
         {
             dragger.StartDrag();
         }
         Event.current.Use();
     }
     if ((Event.current.type == EventType.MouseDown && Event.current.button == 1) || KeyBindingDefOf.Cancel.KeyDownEvent)
     {
         SoundDefOf.CancelMode.PlayOneShotOnCamera();
         Deselect();
         dragger.EndDrag();
         Event.current.Use();
         TutorSystem.Notify_Event("ClearDesignatorSelection");
     }
     if (Event.current.type == EventType.MouseUp && Event.current.button == 0 && dragger.Dragging)
     {
         selectedDesignator.DesignateMultiCell(dragger.DragCells);
         dragger.EndDrag();
         Event.current.Use();
     }
 }