Beispiel #1
0
        //Metodo llamado en cada tick del timer, mueve la serpiente y comprueba si hay colisiones
        public void actualizar()
        {
            for (int i = 0; i < _numserpientes; i++)
            {
                _aSerpiente[i].Mover();
            }


            if (_modo == 0)
            {
                for (int i = 0; i < _numserpientes; i++)
                {
                    if (comida.buscarenComida(_aSerpiente[i].X, _aSerpiente[i].Y))
                    {
                        _aSerpiente[i].crecer(comida.Cantidad);
                        generarPuntuacion(comida.Cantidad);
                        generarComida();
                    }

                    if (_hayFin == false)
                    {
                        _hayFin = nivelActual.nivel.buscarenTablero(_aSerpiente[i].X, _aSerpiente[i].Y);
                    }

                    if (_hayFin == false)
                    {
                        _hayFin = _aSerpiente[i].buscarenSerpiente(_aSerpiente[i].X, _aSerpiente[i].Y, false);
                    }
                }

                if (_hayFin == false)
                {
                    _hayFin = _aSerpiente[0].buscarenSerpiente(_aSerpiente[1].X, _aSerpiente[1].Y, true);
                }
                if (_hayFin == false)
                {
                    _hayFin = _aSerpiente[1].buscarenSerpiente(_aSerpiente[0].X, _aSerpiente[0].Y, true);
                }
            }

            else
            {
                for (int i = 0; i < _numserpientes; i++)
                {
                    if (comida.buscarenComida(_aSerpiente[i].X, _aSerpiente[i].Y))
                    {
                        _aSerpiente[_numserpientes - 1 - i].crecer(comida.Cantidad);
                        generarComida();
                    }
                    if (_hayFin == false)
                    {
                        _hayFin = _aSerpiente[i].buscarenSerpiente(_aSerpiente[i].X, _aSerpiente[i].Y, false);
                    }
                    if (_hayFin == false)
                    {
                        _hayFin = nivelActual.nivel.buscarenTablero(_aSerpiente[i].X, _aSerpiente[i].Y);
                    }
                }
            }
        }
Beispiel #2
0
        //Metodo llamado en cada tick del timer, mueve la serpiente y comprueba si hay colisiones
        public void actualizar()
        {
            serpiente.Mover();
            if (comida.buscarenComida(serpiente.X, serpiente.Y))
            {
                serpiente.crecer(comida.Cantidad);
                generarPuntuacion(comida.Cantidad);
                generarComida();
            }
            _hayFin = nivelActual.nivel.buscarenTablero(serpiente.X, serpiente.Y);

            if (_hayFin == false)
            {
                _hayFin = serpiente.buscarenSerpiente(serpiente.X, serpiente.Y, false);
            }
        }