示例#1
0
        /// <summary>
        /// Funkcja, która przy kliknięciu  lewym klawiszem myszki na guzik "Poziom I", włącza ten poziom
        /// </summary>
        private void button1_Click(object sender, EventArgs e)
        {
            Lvl1 lvl1 = new Lvl1();

            lvl1.Show();
            lvl1.SetBounds(this.Location.X, this.Location.Y, this.Width, this.Height);
            lvl1.Location = this.Location;
            this.Hide();
        }
示例#2
0
文件: Lvl1.cs 项目: KapitanMixu/Gra
        /// <summary>
        /// Funkcja która, podejmuje kontretną akcję na podstawie klawisza klawiatury, który został wciśnięty:
        ///
        /// 1.Po kliknięciu R resetuje poziom
        ///
        /// 2.Po kliknięciu M wraca do menu
        ///
        /// 3.Po kliknieciu W,S,A albo D wykonuje ruch:
        ///
        /// a)Zmienia wartości M i N w zależności od klikniętego klawisza
        ///
        /// b)Sprawdza czy dany ruch jest dozowolony. Jeżeli tak to sprawdza czy postać przesuwa skrzynkę czy nie.
        ///
        /// c)Wykonuje ruch.
        ///
        /// d)Sprawdza ile skrzynkek jest na swoich miejscach(Jeżeli wyniesie tylie ile założyliśmy na początku gracz wygrywa)
        ///
        /// </summary>
        /// @see M, N
        private void Lvl1_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.R)
            {
                Lvl1 lvl1 = new Lvl1();
                lvl1.Show();
                lvl1.Location = this.Location;
                this.Hide();
            }
            if (e.KeyCode == Keys.M)
            {
                Form1 Menu = new Form1();
                Menu.Show();
                Menu.SetBounds(this.Location.X, this.Location.Y, this.Width, this.Height);
                Menu.Location = this.Location;
                this.Hide();
            }
            else
            {
                if (e.KeyCode == Keys.W)
                {
                    M = -1;
                    N = 0;
                }
                if (e.KeyCode == Keys.S)
                {
                    M = 1;
                    N = 0;
                }
                if (e.KeyCode == Keys.A)
                {
                    M = 0;
                    N = -1;
                }
                if (e.KeyCode == Keys.D)
                {
                    M = 0;
                    N = 1;
                }


                if (pnlGrid[a1 + N, b1 + M].AccessibleName == "Wall" || ((pnlGrid[a1 + 2 * N, b1 + 2 * M].AccessibleName == "Wall" || pnlGrid[a1 + 2 * N, b1 + 2 * M].AccessibleName == "Box") && pnlGrid[a1 + N, b1 + M].AccessibleName == "Box"))
                {
                    ;
                }
                else if (pnlGrid[a1 + 2 * N, b1 + 2 * M].AccessibleName != "Wall" && pnlGrid[a1 + N, b1 + M].AccessibleName == "Box")
                {
                    pnlGrid[a1 + 2 * N, b1 + 2 * M].BackgroundImage = Properties.Resources.box2;
                    pnlGrid[a1 + 2 * N, b1 + 2 * M].AccessibleName  = "Box";
                    pnlGrid[a1, b1].BackgroundImage         = Properties.Resources.floor;
                    pnlGrid[a1, b1].AccessibleName          = null;
                    pnlGrid[a1 + N, b1 + M].BackgroundImage = Properties.Resources.me;
                    pnlGrid[a1 + N, b1 + M].AccessibleName  = "Me";
                    a1 = a1 + N;
                    b1 = b1 + M;
                }
                else
                {
                    pnlGrid[a1, b1].BackgroundImage         = Properties.Resources.floor;
                    pnlGrid[a1, b1].AccessibleName          = null;
                    pnlGrid[a1 + N, b1 + M].BackgroundImage = Properties.Resources.me;
                    pnlGrid[a1 + N, b1 + M].AccessibleName  = "Me";
                    a1 = a1 + N;
                    b1 = b1 + M;
                }
                int spots = 0;
                for (int i = 0; i < B1.Size; i++)
                {
                    for (int j = 0; j < B1.Size; j++)
                    {
                        if (pnlGrid[i, j].AccessibleName == "Box" && pnlGrid[i, j].AccessibleDescription == "Spot")
                        {
                            pnlGrid[i, j].BackgroundImage = Properties.Resources.box1;
                            spots++;
                        }
                        else if (pnlGrid[i, j].AccessibleName == "Me" && pnlGrid[i, j].AccessibleDescription == "Spot")
                        {
                            pnlGrid[i, j].BackgroundImage = Properties.Resources.me;
                        }
                        else if (pnlGrid[i, j].AccessibleDescription == "Spot")
                        {
                            pnlGrid[i, j].BackgroundImage = Properties.Resources.spot;
                        }
                    }
                }
                Wynik++;
                string Wyniks = Wynik.ToString();
                Score.Text = Wyniks;
                if (spots == 2)
                {
                    win win = new win();
                    win.score = Wyniks;
                    win.Show();
                    win.Score(Wyniks);
                    win.SetBounds(this.Location.X, this.Location.Y, this.Width, this.Height);
                    this.Hide();
                }
            }
        }