private void OnMouse(UIMouseEventType type, UpdateState state)
 {
     if (type == UIMouseEventType.MouseOver)
     {
         MouseIsOn = true;
     }
     else if (type == UIMouseEventType.MouseOut)
     {
         MouseIsOn = false;
         Tooltip   = null;
     }
     else if (type == UIMouseEventType.MouseDown)
     {
         if (PieMenu == null)
         {
             //get new pie menu, make new pie menu panel for it
             if (ObjectHover != 0)
             {
                 if (InteractionsAvailable)
                 {
                     HITVM.Get().PlaySoundEvent(UISounds.PieMenuAppear);
                     var obj  = vm.GetObjectById(ObjectHover);
                     var menu = obj.GetPieMenu(vm, ActiveEntity);
                     if (menu.Count != 0)
                     {
                         PieMenu = new UIPieMenu(menu, obj, ActiveEntity, this);
                         this.Add(PieMenu);
                         PieMenu.X = state.MouseState.X;
                         PieMenu.Y = state.MouseState.Y;
                         PieMenu.UpdateHeadPosition(state.MouseState.X, state.MouseState.Y);
                     }
                 }
                 else
                 {
                     HITVM.Get().PlaySoundEvent(UISounds.Error);
                     GameFacade.Screens.TooltipProperties.Show     = true;
                     GameFacade.Screens.TooltipProperties.Opacity  = 1;
                     GameFacade.Screens.TooltipProperties.Position = new Vector2(state.MouseState.X,
                                                                                 state.MouseState.Y);
                     GameFacade.Screens.Tooltip = GameFacade.Strings.GetString("159", "0");
                     GameFacade.Screens.TooltipProperties.UpdateDead = false;
                     ShowTooltip = true;
                 }
             }
         }
         else
         {
             PieMenu.RemoveSimScene();
             this.Remove(PieMenu);
             PieMenu = null;
         }
     }
     else if (type == UIMouseEventType.MouseUp)
     {
         GameFacade.Screens.TooltipProperties.Show    = false;
         GameFacade.Screens.TooltipProperties.Opacity = 0;
         ShowTooltip = false;
     }
 }
 public void ClosePie()
 {
     if (PieMenu != null)
     {
         PieMenu.RemoveSimScene();
         Queue.PieMenuClickPos = PieMenu.Position;
         this.Remove(PieMenu);
         PieMenu = null;
     }
 }
Exemplo n.º 3
0
 private void OnMouse(UIMouseEventType type, UpdateState state)
 {
     if (type == UIMouseEventType.MouseOver)
     {
         if (QueryPanel.Mode == 1) QueryPanel.Active = false;
         MouseIsOn = true;
     }
     else if (type == UIMouseEventType.MouseOut)
     {
         MouseIsOn = false;
         Tooltip = null;
     }
     else if (type == UIMouseEventType.MouseDown)
     {
         if (!LiveMode)
         {
             if (CustomControl != null) CustomControl.MouseDown(state);
             else ObjectHolder.MouseDown(state);
             return;
         }
         if (PieMenu == null)
         {
             //get new pie menu, make new pie menu panel for it
                 if (ObjectHover != 0 && InteractionsAvailable)
                 {
                     HITVM.Get().PlaySoundEvent(UISounds.PieMenuAppear);
                     var obj = vm.GetObjectById(ObjectHover);
                     var menu = obj.GetPieMenu(vm, ActiveEntity);
                     if (menu.Count != 0)
                     {
                         PieMenu = new UIPieMenu(menu, obj, ActiveEntity, this);
                         this.Add(PieMenu);
                         PieMenu.X = state.MouseState.X;
                         PieMenu.Y = state.MouseState.Y;
                         PieMenu.UpdateHeadPosition(state.MouseState.X, state.MouseState.Y);
                     }
                 }
                 else
                 {
                     HITVM.Get().PlaySoundEvent(UISounds.Error);
                     GameFacade.Screens.TooltipProperties.Show = true;
                     GameFacade.Screens.TooltipProperties.Opacity = 1;
                     GameFacade.Screens.TooltipProperties.Position = new Vector2(state.MouseState.X,
                         state.MouseState.Y);
                     GameFacade.Screens.Tooltip = GameFacade.Strings.GetString("159", "0");
                     GameFacade.Screens.TooltipProperties.UpdateDead = false;
                     ShowTooltip = true;
                 }
         }
         else
         {
             PieMenu.RemoveSimScene();
             this.Remove(PieMenu);
             PieMenu = null;
         }
     }
     else if (type == UIMouseEventType.MouseUp)
     {
         if (!LiveMode)
         {
             if (CustomControl != null) CustomControl.MouseUp(state);
             else ObjectHolder.MouseUp(state);
             return;
         }
         GameFacade.Screens.TooltipProperties.Show = false;
         GameFacade.Screens.TooltipProperties.Opacity = 0;
         ShowTooltip = false;
     }
 }
Exemplo n.º 4
0
 public void ClosePie()
 {
     if (PieMenu != null)
     {
         PieMenu.RemoveSimScene();
         Queue.PieMenuClickPos = PieMenu.Position;
         this.Remove(PieMenu);
         PieMenu = null;
     }
 }