/// <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(); }
/// <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(); } } }