コード例 #1
0
 // Métodos
 override public void patrullarCalles(IPatrullable lugarAPatrullar)
 {
     Console.BackgroundColor = ConsoleColor.DarkBlue;
     Console.WriteLine("     [POLICIA]       ");
     Console.ResetColor();
     Console.ForegroundColor = ConsoleColor.Blue;
     Console.WriteLine("[POLICIA] ¡Estoy patrullando! [Lugar: {0} ]", lugarAPatrullar);
     Console.ResetColor();
     vehiculo.encenderSirena();
     vehiculo.conducir();
     if (lugarAPatrullar.hayAlgoFueraDeLoNormal())
     {
         Console.ForegroundColor = ConsoleColor.Red;
         Console.WriteLine("    HAY UNA AMENAZA PARA LA SEGURIDAD!");
         Console.ForegroundColor = ConsoleColor.Blue;
         herramienta.usar();
         ordenPolicia.Ejecutar();
         Console.ResetColor();
         herramienta.guardar();
     }
     else
     {
         Console.WriteLine("No hay nada fuera de lo normal");
     }
     Console.ResetColor();
     Console.WriteLine("_______________________________________________ \n ");
 }
 public virtual void PatrullarCalles(IPatrullable pPatrullaje)
 {
     if (this.manejador != null)
     {
         this.manejador.PatrullarCalles(pPatrullaje);
     }
 }
コード例 #3
0
ファイル: Manejador.cs プロジェクト: tranzert/DesignPartner
 //METODO DEL POLICIA
 public virtual void patrullarCalles(IPatrullable patrullable)
 {
     if (this.sucesor != null)
     {
         this.sucesor.patrullarCalles(patrullable);
     }
 }
コード例 #4
0
 virtual public void patrullarCalles(IPatrullable lugarAPatrullar)
 {
     if (sucesor != null)
     {
         sucesor.patrullarCalles(lugarAPatrullar);
     }
 }
コード例 #5
0
 public virtual void patrullarCalles(IPatrullable lugar)
 {
     if (this.sucesor != null)
     {
         this.sucesor.patrullarCalles(lugar);
     }
 }
コード例 #6
0
        //METODOS

        public override void patrullarCalles(IPatrullable patrullable)
        {
            if (vehiculo == null && herramienta == null)
            {
                herramienta = new Pistola();
                vehiculo    = new Patrullero();
            }

            if (patrullable.hayAlgoFueraDeLoNormal())
            {
                vehiculo.getEstado().encender();
                vehiculo.encenderSirena();
                vehiculo.conducir();


                if (vehiculo.getEstado() is Roto)
                {
                    Console.WriteLine("la patrulla se rompio, el policia no pudo completar su tarea");
                }
                else
                {
                    this.apagarVehiculo();
                    this.ordenes[this.numeroOrden].ejecutar();
                    herramienta.usar();
                    herramienta.guardar();
                }
            }
        }
コード例 #7
0
        public override void patrullarCalles(IPatrullable patrullable)
        {
            ICuartel     comisaria = fabricaDePolicias.crearCuartel();
            IResponsable policia   = comisaria.getPersonal();

            ((Policia)policia).patrullarCalles(patrullable);
            comisaria.devolverAlICuartl(policia);
        }
 //METODO PATRULLAR CALLES DEL PATRON COMMAND
 public void PatrullarCallesCommand(IPatrullable pPatrullaje)
 {
     if (pPatrullaje.hayAlgoFueraDeLoNormal())
     {
         ordenPolicial.Ejecutar();
     }
     else
     {
         Console.WriteLine("ESTA TODO EN ORDEN");
     }
 }
コード例 #9
0
        public override void patrullarCalles(IPatrullable patrullable)
        {
            if (fabrica == null)
            {
                fabrica = new FabricaDePolicia();
            }

            Policia policia = (Policia)fabrica.crearHeroe();

            policia.Herramienta = fabrica.crearHerramienta();
            policia.Vehiculo    = fabrica.crearVehiculo();


            policia.patrullarCalles(patrullable);
        }
コード例 #10
0
        public override void patrullarCalles(IPatrullable lugarAPatrullar)
        {
            if (heroeReal == null)
            {
                heroeReal = fabrica.crearHeroe(); // casteo para poder setear orden (propia de un bombero)
                heroeReal.setHerramienta(fabrica.crearHerramienta());
                heroeReal.setVehiculo(fabrica.crearVehiculo());

                // seteo la estrategia de orden, pero antes creo un aux de tipo propio de heroe para poder setear apagado
                Policia aux = (Policia)heroeReal;
                Console.WriteLine("[POLICIA] Elegir orden de policía (ingresar número):");
                Console.WriteLine("     1. Voz de Alto");
                Console.WriteLine("     2. Perseguir y arrestar");
                Console.WriteLine("     3. Avisar y pedir refuerzos");
                bool opcionvalida = false;
                while (!opcionvalida)
                {
                    char op = Console.ReadKey().KeyChar;
                    switch (op)
                    {
                    case '1':
                        aux.setOrdenPolicia(new OPVozDeAlto());
                        opcionvalida = true;
                        break;

                    case '2':
                        aux.setOrdenPolicia(new OPPerseguirYArrestar());
                        opcionvalida = true;
                        break;

                    case '3':
                        aux.setOrdenPolicia(new OPAvisarYPedirRefuerzos());
                        opcionvalida = true;
                        break;

                    default:
                        Console.WriteLine(" \n ERROR: Por favor, ingrese una opción correcta: ");
                        break;
                    }
                }
            }
            heroeReal.patrullarCalles(lugarAPatrullar);
            // devuelvo el bombero creado al cuartel
            fabrica.crearCuartel().agregarPersonal(heroeReal);
            fabrica.crearCuartel().agregarVehiculo(heroeReal.getVehiculo());
            fabrica.crearCuartel().agregarHerramienta(heroeReal.getHerramienta());
        }
コード例 #11
0
 public override void patrullarCalles(IPatrullable patrullable)
 {
     if (vehiculo.conducir())
     {
         this.Herramienta.usar();
         Console.WriteLine("");
         if (patrullable.hayAlgoFueraDeLoNormal())
         {
             ordenAEjecutar.ejecutar();
         }
         Console.WriteLine("");
         this.Herramienta.guardar();
     }
     else
     {
         Console.WriteLine("");
         Console.WriteLine("Lo lamento, no se ah podido llegar a destino");
         Console.WriteLine("");
     }
 }
        //METODOS DEL POLICIA

        //METODO MODIFICADO
        public override void PatrullarCalles(IPatrullable pPatrullaje)
        {
            if (pPatrullaje.hayAlgoFueraDeLoNormal())
            {
                this.vehiculo.encenderSirena();
                if (this.vehiculo.conducir())
                {
                    ordenPolicial.Ejecutar();
                    this.herramienta.usar();
                    this.herramienta.guardar();
                    Console.WriteLine();
                }
                else
                {
                    Console.WriteLine("NO PUEDO LLEGAR DONDE A OCURRIDO EL HECHO DELICTIVO. SE ME HA ROTO EL PATRULLERO");
                }
            }
            else
            {
                Console.WriteLine("ESTA TODO EN ORDEN");
            }
        }
コード例 #13
0
ファイル: Policia.cs プロジェクト: FedericoAlmada/Heroes
        public override void patrullarCalles(IPatrullable lugar)
        {
            if (kit == true)
            {
                vehiculo.encenderSirena();
                vehiculo.conducir();
                herramienta.usar();
            }
            Console.WriteLine("Un policia esta patrullando las calles...");

            if (lugar.hayAlgoFueraDeLoNormal())
            {
                orden.ejecutar(lugar);
            }
            else
            {
                Console.WriteLine("[!] No hay nada fuera de lo normal en la " + lugar + "\n");
            }
            if (kit == true)
            {
                herramienta.guardar();
            }
        }
コード例 #14
0
 public DenunciaDeRobo(IPatrullable Patrullable)
 {
     this.Patrullable = Patrullable;
 }
コード例 #15
0
 public FabricaPolicia(IOrden orden, IPatrullable patrullable, IResponsable responsable)
 {
     this.orden       = orden;
     this.patrullable = patrullable;
     siguiente        = responsable;
 }
コード例 #16
0
ファイル: OrdenA.cs プロジェクト: FedericoAlmada/Heroes
 public void ejecutar(IPatrullable patrullable)
 {
     Console.WriteLine("[!] Gritando alto para que el delincuente se vaya de la " + patrullable + "\n");
 }
コード例 #17
0
 public DenunciaDeRobo(IPatrullable lugar)
 {
     this.lugar = lugar;
 }
コード例 #18
0
ファイル: OrdenC.cs プロジェクト: FedericoAlmada/Heroes
 public void ejecutar(IPatrullable patrullable)
 {
     Console.WriteLine("[!] Avisando a la comisaría y pidiendo refuerzos en la " + patrullable + "\n");
 }
コード例 #19
0
 public void ejecutar(IPatrullable patrullable)
 {
     Console.WriteLine("[!] Persiguiendo al delincuente en la " + patrullable + "\n");
 }
コード例 #20
0
ファイル: Policia.cs プロジェクト: Geryon04/Heroes-de-Ciudad
 public Policia(IOrden orden, IPatrullable patrullable, IResponsable responsable) : base(responsable)
 {
     this.orden       = orden;
     this.patrullable = patrullable;
 }
コード例 #21
0
 public DenunciaDeRobo(IPatrullable patrullable)
 {
     this.patrullable = patrullable;
 }