using System; using System.Windows.Forms; namespace Chess { public partial class WybranieFigury : Form { private WybranieFigury() { InitializeComponent(); LeftArrow.Click += ButtonClick; RightArrow.Click += ButtonClick; ApplyButton.Click += ButtonClick; } private readonly Pole clickedTile; private int position = 0; private readonly string[] keys = { "BQueen", "BBishop", "BRook", "BKnight" }; private readonly Kolor waitingPlayer; public static bool waiting { get; private set; } = false; public WybranieFigury(Pole clickedTile) : this() { waiting = true; waitingPlayer = Szachownica.KogoTerazTura == Kolor.WHITE ? Kolor.BLACK : Kolor.WHITE; Szachownica.KogoTerazTura = Kolor.NONE; this.clickedTile = clickedTile; if (clickedTile.GetY == 0) { for (int i = 0; i < keys.Length; i++) { keys[i] = keys[i].Remove(0, 1); keys[i] = 'W' + keys[i]; } } Preview.Image = Pole.FiguryObrazy[keys[position]]; } public void ButtonClick(object sender, EventArgs e) { switch (((Button)sender).Name) { case "RightArrow": position++; break; case "LeftArrow": position--; break; default: Close(); break; } if (position < 0) { position = keys.Length - 1; } if (position > keys.Length - 1) { position = 0; } Preview.Image = Pole.FiguryObrazy[keys[position]]; } protected override void OnClosed(EventArgs e) { waiting = false; clickedTile.figura = new Figura(keys[position], clickedTile); Szachownica.KogoTerazTura = waitingPlayer; Figura.ZaaktualizujWszystkieAtaki(); Posuniecie Search = new Posuniecie(); if (Search.SyndromOblezonejTwierdzy()) { Szachownica.Window.GameState.Text = "CHECK"; Szachownica.Window.GameState.ForeColor = System.Drawing.Color.Firebrick; Szachownica.Window.GameState.Visible = true; } _ = Search.Mat(); base.OnClosed(e); } } }