Exemple #1
0
 private static void PrimaryPanelControl_MouseLeave(object sender, EventArgs e)
 {
     EncounterRenderer.IsPrimaryPanelMouseDown = false;
     EncounterRenderer.IsHoveringPrimaryPanel  = false;
     EncounterRenderer.DrawPrimaryPanel();
     EncounterRenderer.DrawField();
 }
Exemple #2
0
 private static void PrimaryPanelControl_MouseUp(object sender, System.Windows.Forms.MouseEventArgs e)
 {
     if (EncounterRenderer.IsPrimaryPanelMouseDown)
     {
         EncounterRenderer.ShowPanelSelect(true);
     }
     EncounterRenderer.IsPrimaryPanelMouseDown = false;
     EncounterRenderer.DrawPrimaryPanel();
     EncounterRenderer.DrawPanels();
 }
Exemple #3
0
        private static void DrawPanels()
        {
            var cols         = 4;
            var startPoint   = new Point(10, 10);
            var margin       = 5;
            var optionsCount = 10;

            for (int panel = 0; panel < optionsCount; panel++)
            {
                var topLeft = new Point(startPoint.X + (panel % cols) * (40 + margin * 2), startPoint.Y + (panel / cols) * (32 + margin * 2));

                EncounterRenderer.PanelSelectionRenderer.Draw(new Sprite
                {
                    Position = new Point(topLeft.X, topLeft.Y),
                    TexX     = 0,
                    TexY     = 32 * panel,
                    Width    = 40,
                    Height   = 32,
                    Texture  = $"battleobjects"
                }.WithTopLeftPosition(), 0);
            }

            {
                var selectedPanel = (int)(EncounterRenderer.IsSettingPrimaryPanel ? EncounterRenderer.CurrentEncounter.PrimaryPanel : EncounterRenderer.CurrentEncounter.SecondaryPanel);
                var topLeft       = new Point(startPoint.X - margin + (selectedPanel % cols) * (40 + margin * 2), startPoint.Y - margin + (selectedPanel / cols) * (32 + margin * 2));
                var bottomRight   = new Point(topLeft.X + 40 + margin * 2, topLeft.Y + 32 + margin * 2);
                EncounterRenderer.PanelSelectionRenderer.DrawQuad(new Quad
                {
                    A     = new Point(bottomRight.X, topLeft.Y),
                    B     = new Point(bottomRight.X, bottomRight.Y),
                    C     = new Point(topLeft.X, bottomRight.Y),
                    D     = new Point(topLeft.X, topLeft.Y),
                    Color = Color.FromArgb(125, Color.Wheat),
                    Type  = DrawType.Outline | DrawType.Fill
                }, 4);
            }

            var selectedPosition = EncounterRenderer.PanelSelectionMouseClickConfirmPosition ?? EncounterRenderer.PanelSelectionMouseClickPosition ?? EncounterRenderer.PanelSelectionMousePosition;

            if (selectedPosition != null)
            {
                var highlightedPanel = (selectedPosition.Value.X / (40 + 2 * margin)) + cols * (selectedPosition.Value.Y / (32 + 2 * margin));
                if (highlightedPanel < optionsCount)
                {
                    var topLeft     = new Point(startPoint.X - margin + (highlightedPanel % cols) * (40 + margin * 2), startPoint.Y - margin + (highlightedPanel / cols) * (32 + margin * 2));
                    var bottomRight = new Point(topLeft.X + 40 + margin * 2, topLeft.Y + 32 + margin * 2);
                    var color       = EncounterRenderer.PanelSelectionMouseClickPosition.HasValue ? Color.FromArgb(128, Color.DarkBlue) : Color.FromArgb(128, Color.AliceBlue);
                    EncounterRenderer.PanelSelectionRenderer.DrawQuad(new Quad
                    {
                        A     = new Point(bottomRight.X, topLeft.Y),
                        B     = new Point(bottomRight.X, bottomRight.Y),
                        C     = new Point(topLeft.X, bottomRight.Y),
                        D     = new Point(topLeft.X, topLeft.Y),
                        Color = color,
                        Type  = DrawType.Outline | DrawType.Fill
                    }, 4);
                }
                if (EncounterRenderer.PanelSelectionMouseClickConfirmPosition.HasValue && EncounterRenderer.PanelSelectionMouseClickPosition.HasValue)
                {
                    var selectedPanel = (EncounterRenderer.PanelSelectionMouseClickPosition.Value.X / (40 + 2 * margin)) + cols * (EncounterRenderer.PanelSelectionMouseClickPosition.Value.Y / (32 + 2 * margin));
                    var confirmPanel  = (EncounterRenderer.PanelSelectionMouseClickConfirmPosition.Value.X / (40 + 2 * margin)) + cols * (EncounterRenderer.PanelSelectionMouseClickConfirmPosition.Value.Y / (32 + 2 * margin));
                    if (confirmPanel < optionsCount && confirmPanel == selectedPanel)
                    {
                        if (EncounterRenderer.IsSettingPrimaryPanel)
                        {
                            EncounterRenderer.CurrentEncounter.PrimaryPanel = (Panel.PANEL)highlightedPanel;
                        }
                        else
                        {
                            EncounterRenderer.CurrentEncounter.SecondaryPanel = (Panel.PANEL)highlightedPanel;
                        }
                        EncounterRenderer.DrawField();
                        EncounterRenderer.DrawPrimaryPanel();
                        EncounterRenderer.DrawSecondaryPanel();
                    }
                    EncounterRenderer.PanelSelectionMouseClickPosition        = null;
                    EncounterRenderer.PanelSelectionMouseClickConfirmPosition = null;
                }
            }
            EncounterRenderer.PanelSelectionRenderer.Render();
        }
Exemple #4
0
 private static void PrimaryPanelControl_MouseEnter(object sender, EventArgs e)
 {
     EncounterRenderer.IsHoveringPrimaryPanel = true;
     EncounterRenderer.DrawPrimaryPanel();
     EncounterRenderer.DrawField();
 }
Exemple #5
0
 private static void PrimaryPanelControl_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
 {
     EncounterRenderer.IsPrimaryPanelMouseDown      = true;
     ((System.Windows.Forms.Control)sender).Capture = false;
     EncounterRenderer.DrawPrimaryPanel();
 }