public ForEmployee(string id)
        {
            InitializeComponent();
            Settings.ForeColor    = Color.FromArgb(227, 213, 212);
            Question.ForeColor    = Color.FromArgb(227, 213, 212);
            Orders.ForeColor      = Color.FromArgb(227, 213, 212);
            Help.ForeColor        = Color.FromArgb(227, 213, 212);
            NavPanel.Height       = NewDelivery.Height;
            NavPanel.Top          = NewDelivery.Top;
            NavPanel.Left         = NewDelivery.Left;
            NewDelivery.ForeColor = Color.FromArgb(217, 35, 73);
            NewDelivery.Image     = Properties.Resources.NewDelivery_on;
            NamePanel.Text        = "Новая доставка";
            UserID     = id;
            connection = new SqlConnection(connectionString);
            connection.Open();
            string query = $"SELECT [id] FROM [Delivery service employee] WHERE [user id]={UserID}";

            cmd   = new SqlCommand(query, connection);
            empid = cmd.ExecuteScalar().ToString();
            connection.Close();
            UpdateProfile();
            UpdateDelivery();
            NewDeliveryPanel.Show();
            NewDeliveryPanel.Location = loc;
            ProfilePanel.Hide();
            QuestionPanel.Hide();
            InfoPanel.Hide();
            MyDeliveryPanel.Hide();
        }
Example #2
0
        private IEnumerator RollIn(FrameSide side)
        {
            _rollingIn = true;
            Vector3 tempScale    = transform.localScale;
            Vector3 tempPosition = transform.localPosition;

            yield return(Panel.Hide());

            yield return(Toolbar.Deactivate());

            while (Vector3.Distance(tempScale, _baseScale) > THRESHOLD)
            {
                tempScale    = Vector3.Lerp(tempScale, _baseScale, INTERP_FAC);
                tempPosition = Vector3.Lerp(tempPosition, _basePosition, INTERP_FAC);

                transform.localScale    = tempScale;
                transform.localPosition = tempPosition;

                yield return(new WaitForSeconds(0.01f));
            }

            Activating              = false;
            transform.localScale    = _baseScale;
            transform.localPosition = _basePosition;
            _rollingIn              = false;
            _unrolled = false;
        }
Example #3
0
 private void HideAll()
 {
     InfoPanel.Hide();
     DashboardPanel_DeliveryCodeLabel.Hide();
     DashboardPanel_DeliveryCodeTextBox.Hide();
     DashboardPanel_ValidateDeliveryButton.Hide();
     DashboardPanel_ValidateContributionButton.Hide();
     DashboardPanel_ApproveVolunteerButton.Hide();
 }
Example #4
0
 private void OnInfoButtonHover(bool isHovering)
 {
     if (isHovering)
     {
         infoPanel.ShowData(dataLayer, infoButton.GetComponent <RectTransform>());
     }
     else
     {
         if (!infoPanel.IsMouseInside())
         {
             infoPanel.Hide();
         }
     }
 }
Example #5
0
 private void NewOrder_Click(object sender, EventArgs e)
 {
     InfoPanel.Hide();
     QuestionPanel.Hide();
     MyDeliveryPanel.Hide();
     ProfilePanel.Hide();
     NewDeliveryPanel.Show();
     NewDeliveryPanel.Location = loc;
     NamePanel.Text            = "Новая доставка";
     Settings.ForeColor        = Color.FromArgb(227, 213, 212);
     Question.ForeColor        = Color.FromArgb(227, 213, 212);
     Orders.ForeColor          = Color.FromArgb(227, 213, 212);
     Help.ForeColor            = Color.FromArgb(227, 213, 212);
     NavPanel.Height           = NewDelivery.Height;
     NavPanel.Top          = NewDelivery.Top;
     NavPanel.Left         = NewDelivery.Left;
     NewDelivery.ForeColor = Color.FromArgb(217, 35, 73);
     NewDelivery.Image     = Properties.Resources.NewDelivery_on;
 }
Example #6
0
        void grid_SelectionChanged(object sender, EventArgs e)
        {
            InfoPanel.Hide();

            if (grid.SelectedRows.Count > 0)
            {
                if (grid.SelectedRows[0].DataBoundItem is SizeEntity)
                {
                    if ((grid.SelectedRows[0].DataBoundItem as SizeEntity).InternalObject is SPSite)
                    {
                        SPSite site = (grid.SelectedRows[0].DataBoundItem as SizeEntity).InternalObject as SPSite;
                        chart.Hide();

                        InfoPanel.Show();

                        RefreshChart();
                    }
                }
            }
        }
 private void Orders_Click(object sender, EventArgs e)
 {
     UpdateMyDelivery();
     MyDeliveryPanel.Show();
     InfoPanel.Hide();
     QuestionPanel.Hide();
     MyDeliveryPanel.Location = loc;
     ProfilePanel.Hide();
     NamePanel.Text        = "Мои доставки";
     Settings.ForeColor    = Color.FromArgb(227, 213, 212);
     NewDelivery.ForeColor = Color.FromArgb(227, 213, 212);
     Question.ForeColor    = Color.FromArgb(227, 213, 212);
     Help.ForeColor        = Color.FromArgb(227, 213, 212);
     NavPanel.Height       = Orders.Height;
     NavPanel.Top          = Orders.Top;
     NavPanel.Left         = Orders.Left;
     Orders.ForeColor      = Color.FromArgb(217, 35, 73);
     Orders.Image          = Properties.Resources.MyDelivery_on;
     NewDelivery.Image     = Properties.Resources.NewDelivery;
 }
Example #8
0
 private void NewOrder_Click(object sender, EventArgs e)
 {
     UpdateClients();
     InfoPanel.Hide();
     Workers.Hide();
     Delivers.Hide();
     QuestionPanel.Hide();
     MyDeliveryPanel.Hide();
     NewDeliveryPanel.Show();
     NewDeliveryPanel.Location = loc;
     NamePanel.Text            = "Клиенты";
     Settings.ForeColor        = Color.FromArgb(227, 213, 212);
     Question.ForeColor        = Color.FromArgb(227, 213, 212);
     Orders.ForeColor          = Color.FromArgb(227, 213, 212);
     Help.ForeColor            = Color.FromArgb(227, 213, 212);
     NavPanel.Height           = NewDelivery.Height;
     NavPanel.Top          = NewDelivery.Top;
     NavPanel.Left         = NewDelivery.Left;
     NewDelivery.ForeColor = Color.FromArgb(217, 35, 73);
 }
Example #9
0
 private void gunaButton5_Click(object sender, EventArgs e)
 {
     UpdateQuestions();
     QuestionPanel.Location = loc;
     Delivers.Hide();
     InfoPanel.Hide();
     QuestionPanel.Show();
     Workers.Hide();
     MyDeliveryPanel.Hide();
     NewDeliveryPanel.Hide();
     NamePanel.Text        = "Вопросы";
     Settings.ForeColor    = Color.FromArgb(227, 213, 212);
     NewDelivery.ForeColor = Color.FromArgb(227, 213, 212);
     Orders.ForeColor      = Color.FromArgb(227, 213, 212);
     Question.ForeColor    = Color.FromArgb(227, 213, 212);
     NavPanel.Height       = Help.Height;
     NavPanel.Top          = Help.Top;
     NavPanel.Left         = Help.Left;
     Help.ForeColor        = Color.FromArgb(217, 35, 73);
 }
 private void Settings_Click(object sender, EventArgs e)
 {
     InfoPanel.Hide();
     UpdateProfile();
     ProfilePanel.Location = loc;
     ProfilePanel.Show();
     QuestionPanel.Hide();
     NewDeliveryPanel.Hide();
     MyDeliveryPanel.Hide();
     NamePanel.Text        = "Профиль";
     Question.ForeColor    = Color.FromArgb(227, 213, 212);
     NewDelivery.ForeColor = Color.FromArgb(227, 213, 212);
     Orders.ForeColor      = Color.FromArgb(227, 213, 212);
     Help.ForeColor        = Color.FromArgb(227, 213, 212);
     NavPanel.Height       = Settings.Height;
     NavPanel.Top          = Settings.Top;
     NavPanel.Left         = Settings.Left;
     Settings.ForeColor    = Color.FromArgb(217, 35, 73);
     Settings.Image        = Properties.Resources.Settings_on;
     NewDelivery.Image     = Properties.Resources.NewDelivery;
 }
Example #11
0
 private void Question_Click(object sender, EventArgs e)
 {
     UpdateWorkers();
     InfoPanel.Hide();
     Workers.Location = loc;
     Workers.Show();
     Delivers.Hide();
     QuestionPanel.Hide();
     MyDeliveryPanel.Hide();
     Delivers.Hide();
     NewDeliveryPanel.Hide();
     NamePanel.Text        = "Работники";
     Settings.ForeColor    = Color.FromArgb(227, 213, 212);
     NewDelivery.ForeColor = Color.FromArgb(227, 213, 212);
     Orders.ForeColor      = Color.FromArgb(227, 213, 212);
     Help.ForeColor        = Color.FromArgb(227, 213, 212);
     NavPanel.Height       = Question.Height;
     NavPanel.Top          = Question.Top;
     NavPanel.Left         = Question.Left;
     Question.ForeColor    = Color.FromArgb(217, 35, 73);
 }
Example #12
0
        private void Orders_Click(object sender, EventArgs e)
        {
            InfoPanel.Hide();
            QuestionPanel.Hide();
            UpdateOwners();
            MyDeliveryPanel.Location = loc;
            MyDeliveryPanel.Show();

            NewDeliveryPanel.Hide();
            Delivers.Hide();
            Workers.Hide();
            NamePanel.Text        = "Владельцы";
            Settings.ForeColor    = Color.FromArgb(227, 213, 212);
            NewDelivery.ForeColor = Color.FromArgb(227, 213, 212);
            Question.ForeColor    = Color.FromArgb(227, 213, 212);
            Help.ForeColor        = Color.FromArgb(227, 213, 212);
            NavPanel.Height       = Orders.Height;
            NavPanel.Top          = Orders.Top;
            NavPanel.Left         = Orders.Left;
            Orders.ForeColor      = Color.FromArgb(217, 35, 73);
        }
Example #13
0
 private void Question_Click(object sender, EventArgs e)
 {
     InfoPanel.Hide();
     QuestionPanel.Location = loc;
     QuestionPanel.Show();
     UpdateQuestions();
     QuestionPanel.Show();
     MyDeliveryPanel.Hide();
     ProfilePanel.Hide();
     NewDeliveryPanel.Hide();
     NamePanel.Text        = "Задать вопрос";
     Settings.ForeColor    = Color.FromArgb(227, 213, 212);
     NewDelivery.ForeColor = Color.FromArgb(227, 213, 212);
     Orders.ForeColor      = Color.FromArgb(227, 213, 212);
     Help.ForeColor        = Color.FromArgb(227, 213, 212);
     NavPanel.Height       = Question.Height;
     NavPanel.Top          = Question.Top;
     NavPanel.Left         = Question.Left;
     Question.ForeColor    = Color.FromArgb(217, 35, 73);
     Question.Image        = Properties.Resources.Question_on;
     NewDelivery.Image     = Properties.Resources.Company;
 }
Example #14
0
 private void ProfilePic_Click(object sender, EventArgs e)
 {
     InfoPanel.Hide();
     MyDeliveryPanel.Hide();
     UpdateProfile();
     NewDeliveryPanel.Hide();
     NamePanel.Text        = "Профиль";
     ProfilePanel.Location = loc;
     ProfilePanel.Show();
     Settings.ForeColor    = Color.FromArgb(227, 213, 212);
     Question.ForeColor    = Color.FromArgb(227, 213, 212);
     Orders.ForeColor      = Color.FromArgb(227, 213, 212);
     Help.ForeColor        = Color.FromArgb(227, 213, 212);
     NewDelivery.ForeColor = Color.FromArgb(227, 213, 212);
     NavPanel.Height       = 0;
     NavPanel.Top          = 0;
     NavPanel.Left         = 0;
     Orders.Image          = Properties.Resources.MyDelivery;
     Settings.Image        = Properties.Resources.Settings;
     Question.Image        = Properties.Resources.Question;
     Help.Image            = Properties.Resources.Help;
     NewDelivery.Image     = Properties.Resources.Company;
 }
Example #15
0
        public ForAdmin(string id)
        {
            InitializeComponent();
            Settings.ForeColor    = Color.FromArgb(227, 213, 212);
            Question.ForeColor    = Color.FromArgb(227, 213, 212);
            Orders.ForeColor      = Color.FromArgb(227, 213, 212);
            Help.ForeColor        = Color.FromArgb(227, 213, 212);
            NavPanel.Height       = NewDelivery.Height;
            NavPanel.Top          = NewDelivery.Top;
            NavPanel.Left         = NewDelivery.Left;
            NewDelivery.ForeColor = Color.FromArgb(217, 35, 73);
            NamePanel.Text        = "Новая доставка";
            UserID = id;

            UpdateClients();

            NewDeliveryPanel.Show();
            NewDeliveryPanel.Location = loc;
            MyDeliveryPanel.Hide();
            QuestionPanel.Hide();
            InfoPanel.Hide();
            Workers.Hide();
            Delivers.Hide();
        }
Example #16
0
 public void PiecePointerUp()
 {
     CancelInvoke("Toggle");
     LeanTween.scale(gameObject, new Vector3(2f, 2f), 0.07f);
     infoPanel.Hide();
 }
Example #17
0
    public void RpcGrayOutUnWonPieces(int tile1, int tile2, int tile3)
    {
        if (tile1 != 10)
        {
            Vector3 tileOnePos   = Vector3.zero;
            Vector3 tileThreePos = Vector3.zero;

            foreach (Transform child in universalCanvas.transform)
            {
                var tile = child.gameObject.GetComponent <GamePiece>().tilePiecePosition;

                if (!(tile == tile1 || tile == tile2 || tile == tile3))
                {
                    child.gameObject.GetComponent <Image>().color = new Color(1f, 1f, 1f, 0.3f);
                }
                else if (tile == tile1)
                {
                    foreach (var player in FindObjectsOfType <Player>())
                    {
                        tileOnePos = GetPosition(tile);
                        player.lineRenderer.SetPosition(0, tileOnePos);
                    }
                }
                else if (tile == tile3)
                {
                    foreach (var player in FindObjectsOfType <Player>())
                    {
                        tileThreePos = GetPosition(tile);
                    }
                }
            }

            foreach (var player in FindObjectsOfType <Player>())
            {
                var color = this.role == 0 ? redLineColor : blueLineColor;

                player.lineRenderer.startColor = color;
                player.lineRenderer.endColor   = color;

                player.DrawLineStart(tileOnePos, tileThreePos);
            }

            StartWait(0);
        }
        else
        {
            foreach (Transform child in universalCanvas.transform)
            {
                child.gameObject.GetComponent <Image>().color = new Color(1f, 1f, 1f, 0.3f);
            }

            StartWait(1);
        }

        void StartWait(int state)
        {
            gameManager.EndRound();
            StartCoroutine(WaitToClearPieces(state == 0 ? 2 : 1));
        }

        IEnumerator WaitToClearPieces(int seconds)
        {
            yield return(new WaitForSeconds(seconds));

            ClearAllPieces();
        }

        void ClearAllPieces()
        {
            foreach (var player in FindObjectsOfType <Player>())
            {
                player.lineRendererObj.SetActive(false);
            }

            foreach (Transform child in universalCanvas.transform)
            {
                NetworkServer.Destroy(child.gameObject);
            }

            gameManager.ResetRound();

            infoPanel.Hide();
        }
    }
Example #18
0
 public void MouseExit()
 {
     InfoPanel.Hide();
 }
Example #19
0
 public void HidePanel(InfoPanel panel)
 {
     panel.Hide();
 }
Example #20
0
 public override void OnPointerExit(PointerEventData data)
 {
     Hover = false;
     SpriteRenderer.sprite = UnselectedClockSprites[CurrentSpriteIndex];
     InfoPanel.Hide();
 }
Example #21
0
 public override void OnPointerExit(PointerEventData data)
 {
     Selected = false;
     InfoPanel.Hide();
 }
Example #22
0
        public void GameChanged()
        {
            if (MapDisplay.Game.CurrentPlayer == null)
            {
                BeginTurnButton.Show();
                NextTurnButton.Hide();
                BeginTurnButton.Text = "Begin " + MapDisplay.Game.NextPlayer.Faction.ToString() + "'s turn";
            }
            else
            {
                BeginTurnButton.Hide();
                NextTurnButton.Show();
            }

            MovePictureBox.BorderStyle           = BorderStyle.None;
            BuildPictureBox.BorderStyle          = BorderStyle.None;
            LoadPictureBox.BorderStyle           = BorderStyle.None;
            UnloadPictureBox.BorderStyle         = BorderStyle.None;
            RepairPictureBox.BorderStyle         = BorderStyle.None;
            LightArtilleryPictureBox.BorderStyle = BorderStyle.None;
            HeavyArtilleryPictureBox.BorderStyle = BorderStyle.None;
            TorpedoPictureBox.BorderStyle        = BorderStyle.None;
            DivePictureBox.BorderStyle           = BorderStyle.None;
            LoadTorpedoesPictureBox.BorderStyle  = BorderStyle.None;
            DepthChargePictureBox.BorderStyle    = BorderStyle.None;
            InstallBatteryPictureBox.BorderStyle = BorderStyle.None;
            CapturePictureBox.BorderStyle        = BorderStyle.None;
            MinePictureBox.BorderStyle           = BorderStyle.None;
            LoadMinesPictureBox.BorderStyle      = BorderStyle.None;
            SweepPictureBox.BorderStyle          = BorderStyle.None;
            SearchMinesPictureBox.BorderStyle    = BorderStyle.None;

            if (MapDisplay.Game.SelectedUnit != null)
            {
                DivePictureBox.Image = MapDisplay.Game.SelectedUnit.IsSubmerged ? Bitmaps.Get("Data\\Surface.png") : Bitmaps.Get("Data\\Dive.png");
            }

            switch (MapDisplay.CurrentOrder)
            {
            case null:
                break;

            case Order.Move:
                MovePictureBox.BorderStyle = BorderStyle.Fixed3D;
                break;

            case Order.Build:
                BuildPictureBox.BorderStyle = BorderStyle.Fixed3D;
                break;

            case Order.LightArtillery:
                LightArtilleryPictureBox.BorderStyle = BorderStyle.Fixed3D;
                break;

            case Order.HeavyArtillery:
                HeavyArtilleryPictureBox.BorderStyle = BorderStyle.Fixed3D;
                break;

            case Order.Repair:
                RepairPictureBox.BorderStyle = BorderStyle.Fixed3D;
                break;

            case Order.Load:
                LoadPictureBox.BorderStyle = BorderStyle.Fixed3D;
                break;

            case Order.Unload:
                UnloadPictureBox.BorderStyle = BorderStyle.Fixed3D;
                break;

            case Order.Torpedo:
                TorpedoPictureBox.BorderStyle = BorderStyle.Fixed3D;
                break;

            case Order.DiveOrSurface:
                DivePictureBox.BorderStyle = BorderStyle.Fixed3D;
                break;

            case Order.LoadTorpedoes:
                LoadTorpedoesPictureBox.BorderStyle = BorderStyle.Fixed3D;
                break;

            case Order.DepthCharge:
                DepthChargePictureBox.BorderStyle = BorderStyle.Fixed3D;
                break;

            case Order.InstallBattery:
                InstallBatteryPictureBox.BorderStyle = BorderStyle.Fixed3D;
                break;

            case Order.Capture:
                CapturePictureBox.BorderStyle = BorderStyle.Fixed3D;
                break;

            case Order.Mine:
                MinePictureBox.BorderStyle = BorderStyle.Fixed3D;
                break;

            case Order.LoadMines:
                LoadMinesPictureBox.BorderStyle = BorderStyle.Fixed3D;
                break;

            case Order.Sweep:
                SweepPictureBox.BorderStyle = BorderStyle.Fixed3D;
                break;

            case Order.SearchMines:
                SearchMinesPictureBox.BorderStyle = BorderStyle.Fixed3D;
                break;
            }

            if (MapDisplay.Game.CurrentPlayer != null)
            {
                FlagBox.Image          = Game.GetFactionFlag(MapDisplay.Game.CurrentPlayer.Faction);
                GreetingText.Text      = Game.GetFactionGreetings(MapDisplay.Game.CurrentPlayer.Faction);
                GreetingText.BackColor = Game.GetFactionColor(MapDisplay.Game.CurrentPlayer.Faction);
                NextTurnButton.Show();
                BeginTurnButton.Hide();
            }
            else
            {
                FlagBox.Image          = null;
                GreetingText.Text      = "Press the Begin Turn button.";
                GreetingText.BackColor = SystemColors.Control;
                NextTurnButton.Hide();
                BeginTurnButton.Show();
            }

            var selectedUnit = MapDisplay.Game.SelectedUnit;

            if (selectedUnit != null)
            {
                if (MapDisplay.Game.CurrentPlayer != null && MapDisplay.Game.CurrentPlayer.Faction != Faction.Neutral)
                {
                    if (MapDisplay.Game.CurrentPlayer == selectedUnit.Player)
                    {
                        OrdersPanel.Show();
                    }
                    UnitPanel.Show();
                    InfoPanel.Show();
                }

                UnitPictureBox.SizeMode = PictureBoxSizeMode.Zoom;
                UnitPictureBox.Image    = MapDisplay.Game.SelectedUnit.Type.LargeBitmap;
                UnitTextBox.Text        = selectedUnit.Name;
                UnitTextBox.Text       += " : " + selectedUnit.Type.Name;
                UnitTextBox.Text       += Environment.NewLine + "Integrity: " + Math.Round(selectedUnit.Health * 100).ToString() + "%";
                if (selectedUnit.Type.Capacity >= 1)
                {
                    UnitTextBox.Text += Environment.NewLine + "Cargo: " + selectedUnit.Cargo + "/" + selectedUnit.Type.Capacity;
                }
                if (selectedUnit.TurnsUntilCompletion > 0)
                {
                    UnitTextBox.Text += Environment.NewLine + "Turns until completion: " + selectedUnit.TurnsUntilCompletion;
                }
                if (selectedUnit.Type == UnitType.Submarine && selectedUnit.IsSubmerged)
                {
                    UnitTextBox.Text += Environment.NewLine + "Oxygen left: " + ((Submarine)selectedUnit).OxygenLeft.ToString();
                }
                if (selectedUnit.Type.Abilities.Contains(Order.Torpedo))
                {
                    UnitTextBox.Text += Environment.NewLine + "Torpedo salvoes left: " + selectedUnit.Torpedoes;
                }
                if (selectedUnit.Type.Abilities.Contains(Order.Mine))
                {
                    UnitTextBox.Text += Environment.NewLine + "Mine placements left: " + selectedUnit.Mines;
                }
                if (selectedUnit.Type.Abilities.Contains(Order.Move))
                {
                    UnitTextBox.Text += Environment.NewLine + "Moves Left: " + selectedUnit.MovesLeft.ToString("0.0");
                }
                if (selectedUnit.Type.Abilities.Contains(Order.LightArtillery))
                {
                    UnitTextBox.Text += Environment.NewLine + "Light Artillery " + "Power: " + selectedUnit.Type.LightPower + ", Range: " + selectedUnit.Type.LightRange;
                }
                if (selectedUnit.Type.Abilities.Contains(Order.HeavyArtillery))
                {
                    UnitTextBox.Text += Environment.NewLine + "Heavy Artillery " + "Power: " + selectedUnit.Type.HeavyPower + ", Range: " + selectedUnit.Type.HeavyRange;
                }
                if (!float.IsPositiveInfinity(selectedUnit.Type.Armour))
                {
                    UnitTextBox.Text += Environment.NewLine + "Armour: " + selectedUnit.Type.Armour;
                }

                if (selectedUnit.Type.Abilities.Contains(Order.Move))
                {
                    MoveBox.Show();
                }
                else
                {
                    MoveBox.Hide();
                }
                if (selectedUnit.Type.Abilities.Contains(Order.LightArtillery))
                {
                    LightArtilleryBox.Show();
                }
                else
                {
                    LightArtilleryBox.Hide();
                }
                if (selectedUnit.Type.Abilities.Contains(Order.HeavyArtillery))
                {
                    HeavyArtilleryBox.Show();
                }
                else
                {
                    HeavyArtilleryBox.Hide();
                }
                if (selectedUnit.Type.Abilities.Contains(Order.Repair))
                {
                    RepairBox.Show();
                }
                else
                {
                    RepairBox.Hide();
                }
                if (selectedUnit.Type.Abilities.Contains(Order.Build))
                {
                    BuildBox.Show();
                }
                else
                {
                    BuildBox.Hide();
                }
                if (selectedUnit.Type.Abilities.Contains(Order.Load))
                {
                    LoadBox.Show();
                }
                else
                {
                    LoadBox.Hide();
                }
                if (selectedUnit.Type.Abilities.Contains(Order.Unload))
                {
                    UnloadBox.Show();
                }
                else
                {
                    UnloadBox.Hide();
                }
                if (selectedUnit.Type.Abilities.Contains(Order.Torpedo))
                {
                    TorpedoBox.Show();
                }
                else
                {
                    TorpedoBox.Hide();
                }
                if (selectedUnit.Type.Abilities.Contains(Order.DiveOrSurface))
                {
                    DiveBox.Show();
                    DiveButton.Text = selectedUnit.IsSubmerged ? "Surface" : "Dive";
                }
                else
                {
                    DiveBox.Hide();
                }
                if (selectedUnit.Type.Abilities.Contains(Order.LoadTorpedoes))
                {
                    LoadTorpedoesBox.Show();
                }
                else
                {
                    LoadTorpedoesBox.Hide();
                }
                if (selectedUnit.Type.Abilities.Contains(Order.DepthCharge))
                {
                    DepthChargeBox.Show();
                }
                else
                {
                    DepthChargeBox.Hide();
                }
                if (selectedUnit.Type.Abilities.Contains(Order.InstallBattery))
                {
                    InstallBatteryBox.Show();
                }
                else
                {
                    InstallBatteryBox.Hide();
                }
                if (selectedUnit.Type.Abilities.Contains(Order.Capture))
                {
                    CaptureBox.Show();
                }
                else
                {
                    CaptureBox.Hide();
                }
                if (selectedUnit.Type.Abilities.Contains(Order.Mine))
                {
                    MineBox.Show();
                }
                else
                {
                    MineBox.Hide();
                }
                if (selectedUnit.Type.Abilities.Contains(Order.LoadMines))
                {
                    LoadMinesBox.Show();
                }
                else
                {
                    LoadMinesBox.Hide();
                }
                if (selectedUnit.Type.Abilities.Contains(Order.Sweep))
                {
                    SweepBox.Show();
                }
                else
                {
                    SweepBox.Hide();
                }
                if (selectedUnit.Type.Abilities.Contains(Order.SearchMines))
                {
                    SearchMinesBox.Show();
                }
                else
                {
                    SearchMinesBox.Hide();
                }

                MoveBox.Enabled           = selectedUnit.MovesLeft >= 1;
                LightArtilleryBox.Enabled = selectedUnit.LightShotsLeft >= 1 && !selectedUnit.IsSubmerged;
                HeavyArtilleryBox.Enabled = selectedUnit.HeavyShotsLeft >= 1 && !selectedUnit.IsSubmerged;
                BuildBox.Enabled          = !selectedUnit.IsSubmerged;
                RepairBox.Enabled         = selectedUnit.RepairsLeft >= 1 && !selectedUnit.IsSubmerged;
                LoadBox.Enabled           = selectedUnit.LoadsLeft >= 1 && !selectedUnit.IsSubmerged;
                UnloadBox.Enabled         = selectedUnit.LoadsLeft >= 1 && !selectedUnit.IsSubmerged;
                TorpedoBox.Enabled        = selectedUnit.TorpedoesLeft >= 1 && selectedUnit.Torpedoes >= 1;
                DiveBox.Enabled           = selectedUnit.DivesLeft >= 1;
                LoadTorpedoesBox.Enabled  = selectedUnit.Torpedoes < selectedUnit.Type.MaxTorpedoes;
                DepthChargeBox.Enabled    = selectedUnit.DepthChargesLeft >= 1;
                InstallBatteryBox.Enabled = selectedUnit.InstallsLeft >= 1;
                CaptureBox.Enabled        = selectedUnit.CapturesLeft >= 1;
                MineBox.Enabled           = selectedUnit.MinesLeft >= 1 && selectedUnit.Mines >= 1;
                LoadMinesBox.Enabled      = selectedUnit.Mines < selectedUnit.Type.MaxMines;
                SweepBox.Enabled          = selectedUnit.SweepsLeft >= 1;
                SearchMinesBox.Enabled    = selectedUnit.MineSearchesLeft >= 1;

                if (MapDisplay.CurrentOrder == Order.Move && selectedUnit.MovesLeft < 1)
                {
                    MapDisplay.CurrentOrder = null;
                }
                if (MapDisplay.CurrentOrder == Order.LightArtillery && selectedUnit.LightShotsLeft < 1)
                {
                    MapDisplay.CurrentOrder = null;
                }
                if (MapDisplay.CurrentOrder == Order.HeavyArtillery && selectedUnit.HeavyShotsLeft < 1)
                {
                    MapDisplay.CurrentOrder = null;
                }
                if (MapDisplay.CurrentOrder == Order.Repair && selectedUnit.RepairsLeft < 1)
                {
                    MapDisplay.CurrentOrder = null;
                }
                if (MapDisplay.CurrentOrder == Order.Load && selectedUnit.LoadsLeft < 1)
                {
                    MapDisplay.CurrentOrder = null;
                }
                if (MapDisplay.CurrentOrder == Order.Unload && selectedUnit.LoadsLeft < 1)
                {
                    MapDisplay.CurrentOrder = null;
                }
                if (MapDisplay.CurrentOrder == Order.Torpedo && selectedUnit.TorpedoesLeft < 1)
                {
                    MapDisplay.CurrentOrder = null;
                }
                if (MapDisplay.CurrentOrder == Order.LoadTorpedoes && selectedUnit.Torpedoes >= selectedUnit.Type.MaxTorpedoes)
                {
                    MapDisplay.CurrentOrder = null;
                }
                if (MapDisplay.CurrentOrder == Order.DepthCharge && selectedUnit.DepthChargesLeft < 1)
                {
                    MapDisplay.CurrentOrder = null;
                }
                if (MapDisplay.CurrentOrder == Order.InstallBattery && selectedUnit.InstallsLeft < 1)
                {
                    MapDisplay.CurrentOrder = null;
                }
                if (MapDisplay.CurrentOrder == Order.Capture && selectedUnit.CapturesLeft < 1)
                {
                    MapDisplay.CurrentOrder = null;
                }
                if (MapDisplay.CurrentOrder == Order.Mine && selectedUnit.MinesLeft < 1)
                {
                    MapDisplay.CurrentOrder = null;
                }
                if (MapDisplay.CurrentOrder == Order.LoadMines && selectedUnit.Mines >= selectedUnit.Type.MaxMines)
                {
                    MapDisplay.CurrentOrder = null;
                }
                if (MapDisplay.CurrentOrder == Order.Sweep && selectedUnit.SweepsLeft < 1)
                {
                    MapDisplay.CurrentOrder = null;
                }
                if (MapDisplay.CurrentOrder == Order.SearchMines && selectedUnit.MineSearchesLeft < 1)
                {
                    MapDisplay.CurrentOrder = null;
                }

                HealthBar.Value = (int)(selectedUnit.Health * 100);
            }
            else
            {
                UnitPanel.Hide();
                OrdersPanel.Hide();
                InfoPanel.Hide();
            }
            Invalidate();
        }