Ejemplo n.º 1
0
        protected override void OnDragBegin(int x, int y)
        {
            if (Entity.Serial.IsMobile)
            {
                GameActions.RequestMobileStatus(Entity);

                Engine.UI.GetByLocalSerial <HealthBarGump>(Entity)?.Dispose();

                if (Entity == World.Player)
                {
                    StatusGumpBase.GetStatusGump()?.Dispose();
                }

                Rectangle     rect = FileManager.Gumps.GetTexture(0x0804).Bounds;
                HealthBarGump currentHealthBarGump;
                Engine.UI.Add(currentHealthBarGump = new HealthBarGump((Mobile)Entity)
                {
                    X = Mouse.Position.X - (rect.Width >> 1), Y = Mouse.Position.Y - (rect.Height >> 1)
                });
                Engine.UI.AttemptDragControl(currentHealthBarGump, Mouse.Position, true);
            }
            else
            {
                GameActions.PickUp(Entity);
            }
        }
Ejemplo n.º 2
0
        protected override void OnDragBegin(int x, int y)
        {
            if (Entity is Mobile || Entity is Item it && it.IsDamageable)
            {
                if (Engine.UI.IsDragging)
                {
                    return;
                }

                GameActions.RequestMobileStatus(Entity);

                Engine.UI.GetGump <HealthBarGump>(Entity)?.Dispose();

                if (Entity == World.Player)
                {
                    StatusGumpBase.GetStatusGump()?.Dispose();
                }

                Rectangle     rect = FileManager.Gumps.GetTexture(0x0804).Bounds;
                HealthBarGump currentHealthBarGump;
                Engine.UI.Add(currentHealthBarGump = new HealthBarGump(Entity)
                {
                    X = Mouse.Position.X - (rect.Width >> 1), Y = Mouse.Position.Y - (rect.Height >> 1)
                });
                Engine.UI.AttemptDragControl(currentHealthBarGump, Mouse.Position, true);
            }
Ejemplo n.º 3
0
        protected override void OnDragBegin(int x, int y)
        {
            if (Entity is Mobile || Entity is Item it && it.IsDamageable)
            {
                if (UIManager.IsDragging)
                {
                    return;
                }

                GameActions.RequestMobileStatus(Entity);
                BaseHealthBarGump gump = UIManager.GetGump <BaseHealthBarGump>(Entity);
                gump?.Dispose();

                if (Entity == World.Player)
                {
                    StatusGumpBase.GetStatusGump()?.Dispose();
                }

                if (ProfileManager.Current.CustomBarsToggled)
                {
                    Rectangle rect = new Rectangle(0, 0, HealthBarGumpCustom.HPB_WIDTH, HealthBarGumpCustom.HPB_HEIGHT_SINGLELINE);
                    UIManager.Add(gump = new HealthBarGumpCustom(Entity)
                    {
                        X = Mouse.Position.X - (rect.Width >> 1), Y = Mouse.Position.Y - (rect.Height >> 1)
                    });
                }
                else
                {
                    Rectangle rect = GumpsLoader.Instance.GetTexture(0x0804).Bounds;
                    UIManager.Add(gump = new HealthBarGump(Entity)
                    {
                        X = Mouse.Position.X - (rect.Width >> 1), Y = Mouse.Position.Y - (rect.Height >> 1)
                    });
                }

                UIManager.AttemptDragControl(gump, Mouse.Position, true);
            }