Exemple #1
0
        private void Form1_MouseClick(object sender, MouseEventArgs e)
        {
            Sprite selected = gb.get_selected(e.X, e.Y);

            if (selected == null)
            {
                this.label1.Text = "NADA";
                this.label4.Text = "NADA";
            }
            else
            {
                this.label1.Text = selected.i.ToString();
                this.label4.Text = selected.j.ToString();
                if (selected.current == Sprite.Type.empty)
                {
                    selected.current = gb.next.current;
                    gb.update();
                    gb.getNext().Draw(this);
                    gb.draw_board(this);
                }
            }
        }
        private void Form1_MouseClick(object sender, MouseEventArgs e)
        {
            //Cual celda se selecciono
            if (seleccionada == null)
            {
                seleccionada = gb.get_selected(e.X, e.Y);



                timer1.Start();

                this.label1.Text = seleccionada.i.ToString();
                this.label4.Text = seleccionada.j.ToString();

                seleccionada.actual = Sprite.Type.knight;



                marcados.Add(new Sprite(seleccionada.i, seleccionada.j, Sprite.Type.marked));
                gb.board.Add(marcados);

                gb.draw_board(this);

                cont++;
            }

            else
            {
                anterior = gb.get_selected(e.X, e.Y);

                gb.valido(seleccionada, anterior);
                opcion1 = gb.get_selected(e.X + 2, e.Y + 1);
                opcion2 = gb.get_selected(e.X + 2, e.Y - 1);
                opcion3 = gb.get_selected(e.X - 2, e.Y + 1);
                opcion4 = gb.get_selected(e.X - 2, e.Y - 1);
                opcion5 = gb.get_selected(e.X + 1, e.Y + 2);
                opcion6 = gb.get_selected(e.X + 1, e.Y - 2);
                opcion7 = gb.get_selected(e.X - 1, e.Y + 2);
                opcion8 = gb.get_selected(e.X - 1, e.Y - 2);

                if (gb.valido(seleccionada, anterior) == true && anterior.actual != Sprite.Type.marked)
                {
                    anterior.actual = Sprite.Type.knight;

                    seleccionada.actual = Sprite.Type.marked;

                    this.label1.Text = seleccionada.i.ToString();
                    this.label4.Text = seleccionada.j.ToString();

                    marcados.Add(new Sprite(seleccionada.i, seleccionada.j, Sprite.Type.marked));
                    gb.board.Add(marcados);

                    gb.draw_board(this);

                    seleccionada = anterior;

                    cont++;
                }

                else if (gb.valido(seleccionada, anterior) == false || anterior.actual == Sprite.Type.marked)
                {
                    this.label1.Text = "Invalido";
                    this.label4.Text = "Intente otro";
                }

                if (cont == 64)
                {
                    timer1.Stop();
                    this.label1.Text = "Felicidades";
                    this.label4.Text = "Ganaste";
                    hs.highscore(cont, segundero);
                }

                if (gb.valido(seleccionada, anterior) == false &&
                    opcion1.actual == Sprite.Type.marked && opcion2.actual == Sprite.Type.marked &&
                    opcion3.actual == Sprite.Type.marked && opcion4.actual == Sprite.Type.marked &&
                    opcion5.actual == Sprite.Type.marked && opcion6.actual == Sprite.Type.marked &&
                    opcion7.actual == Sprite.Type.marked && opcion8.actual == Sprite.Type.marked)
                {
                    timer1.Stop();
                    this.label1.Text = "Fin del Juego";
                    this.label4.Text = "Intente de Nuevo";

                    hs.highscore(cont, segundero);
                }
            }
        }