Juego del gusano en C#
Enviado por Karina Hernández Carmona • 25 de Septiembre de 2022 • Trabajo • 5.912 Palabras (24 Páginas) • 248 Visitas
public class Cgusano
{
public delegate void del_fin(int vf); //creando el delegado del fin (Respuesta al evento)
public event del_fin fin; //creando el evento fin (suceso)
public delegate void del_comio(); //creando el delegado del_comio (respuesta al evento)
public event del_comio comio; //creando el evento domio (suceso que tendra)
private Rectangle area;
public Rectangle parea //area de la cabeza del gusano
{
get { return area; }
set { area = value; }
}
int dir, paso; //Declaramos Direccion en la cual ira el gusano (4)
public Ccola cola; //Cuerpo del gusano
Graphics hoja; //Donde se llevara acabo el juego
Pen pluma; //declarando la pluma para dibujar el gusano
SolidBrush brocha, goma; //declarando la brocha para rellenarlo y la goma lo borrara
int maxx, maxy; //declarando los limites del gusano para que no pase de la hoja
public Timer tim; //El metodo que se ejecuta cada vez que se ejecuta el tick
public Cgusano(Control origen,int tam,Random r) //Método constructor
{
hoja = origen.CreateGraphics(); //creando la hoja en donde se haran los graficos
pluma = new Pen(Color.Black); //creando la pluma para dibujar
brocha = new SolidBrush(Color.Coral); //Creando la brocha para rellenar el gusano
goma = new SolidBrush(Color.White); //Creando la goma
cola = new Ccola(); //Creando una instancia de la clase ccola
maxx = origen.ClientSize.Width-tam; //Valores para que el gusano no se salga de los limites de la hoja en x
maxy = origen.ClientSize.Height - tam; //Valores para que el gusano no se salga de los limites de la hoja en x
int x, y; //Declarando variables para x & y
x = (maxx / 2) - tam / 2; //Calculando el valor de x
y = (maxy / 2) - tam / 2; //Calculando el valor de y
parea = new Rectangle(x, y, tam, tam); //Creando el área de dibujo de la cabeza
paso = tam; //Igualando el tamaño de paso con el de tamaño
dir = r.Next(1, 5); //Asignando un valor aleatorio tomando en cuenta desde el 1 hasta el 4
tim = new Timer(); //Creando el timer
tim.Interval = 250; //Asignando el tiempo antes de que el evento Tick suceda
tim.Enabled = true; //Acivando el Timer
tim.Tick += Tim_Tick; //Creando el método en respuesta al evento Tic
Dibuja_ca(); //Invocando al método que dibujará a la cabeza
}
private void Tim_Tick(object sender, EventArgs e) //Método del timer que se ejecutará en respuesta al evento Tick
{
Borra_ca(); //Borrando la cabeza
Borra_co(cola.ppri); //Borrando la primera parte de la cola (tipo Cnodo)
Actualiza_co(cola.ppri, parea); //Actualizando el area de la cola
int x, y; //Declarando variables para x & y
...