Ejemplo n.º 1
0
 public void patearPelota(Oveja ov)
 {
     ultimoTirador = ov.Equipo;
     debx          = 3 * ov.debx;
     deby          = 3 * ov.deby;
     swpropio.Set();
 }
Ejemplo n.º 2
0
        public Mapa()
        {
            for (int i = 0; i < 10; i++)
            {
                switchesovs1[i] = new ManualResetEvent(false);
                switchesovs2[i] = new ManualResetEvent(false);
            }
            pelota = new Pelota(25, 15, equipo.neutro); //Solo existe una pelota
            pelota.moverseAutonomo += pelotaEnMovimiento;
            pelota.puedeMover      += pelotaPuedeMoverse;
            Cancha[25, 15]          = pelota;
            Jugador1             = new Jugador(5, 15, equipo.azul, switchesovs1);
            Jugador1.puedeMover += puedeMoverse;
            Cancha[5, 15]        = Jugador1;
            Jugador2             = new Jugador(45, 15, equipo.rojo, switchesovs2);
            Jugador2.puedeMover += puedeMoverse;
            Cancha[45, 15]       = Jugador2;
            for (int i = 0; i < 8; i++)
            {
                ovejas1[i] = new Oveja(10, i + 12, equipo.azul, switchesovs1[i]); //Usa thread
                J1movio   += ovejas1[i].adqComp;                                  //Todas las ovejas están atentas al movimiento del jugador. Le pasamos el jugador para que analize
                ovejas1[i].moverseAutonomo += ovejaEnMovimiento;                  //Gatillado este evento, el mapa mueve la oveja, la oveja desacelera en su método
                ovejas1[i].puedeMover      += ovejaPuedeMoverse;
                ovejas1[i].patearPelota    += pelota.patearPelota;
                pelota.endmov     += ovejas1[i].pelotaTermino;
                Cancha[10, i + 12] = ovejas1[i];
            }
            for (int i = 0; i < 8; i++)
            {
                ovejas2[i] = new Oveja(40, i + 12, equipo.rojo, switchesovs2[i]); //Usa thread
                J2movio   += ovejas2[i].adqComp;
                ovejas2[i].moverseAutonomo += ovejaEnMovimiento;
                ovejas2[i].puedeMover      += ovejaPuedeMoverse;
                ovejas2[i].patearPelota    += pelota.patearPelota;
                pelota.endmov     += ovejas2[i].pelotaTermino;
                Cancha[40, i + 12] = ovejas2[i];
            }
            this.ovejas = new Oveja[ovejas1.Length + ovejas2.Length];
            this.ovejas1.CopyTo(ovejas, 0);
            this.ovejas2.CopyTo(ovejas, ovejas2.Length);

            //Array de ovejas
        }
Ejemplo n.º 3
0
 //Sigue en lock
 void ovejaEnMovimiento(Oveja ov)
 {
     ovejaEnMovimientoWPF(ov);
 }