public override string ToString() { iAcciones = this; StringBuilder sb = new StringBuilder(); sb.AppendLine($"Es un Lapiz"); sb.AppendLine($"El color es: {this.iAcciones.Color}"); sb.AppendLine($"El tamaño de mina es: {this.iAcciones.UnidadesDeEscritura}"); return(sb.ToString()); }
EscrituraWrapper IAcciones.Escribir(string texto) { iAcciones = this; if (this.tamanioMina >= 0.1f * texto.Length) { this.tamanioMina -= 0.1f * texto.Length; } return(new EscrituraWrapper(texto, this.iAcciones.Color)); }
public void Procesar(IAcciones metodo, string origen) { Console.WriteLine("Texto de origen: " + origen); //métodos internos... //En algún momento llamo a uno o varios métodos de IAcciones metodo.Accion(); //Pero el algoritmo está en TemplateMethod, y se aplican las pertitence acciones particulares según //la case que se instancie y se mande en metodo. return; }
EscrituraWrapper IAcciones.Escribir(string texto) { iAcciones = this; string textoEscrito = ""; for (int i = 0; i < texto.Length; i++) { if (iAcciones.UnidadesDeEscritura >= 0.1) { iAcciones.UnidadesDeEscritura = (float)(iAcciones.UnidadesDeEscritura - 0.1); textoEscrito += texto[i]; } } return(new EscrituraWrapper(textoEscrito, iAcciones.Color)); }
EscrituraWrapper IAcciones.Escribir(string texto) { IAcciones = this; string textoRetorno = ""; for (int i = 0; i < texto.Length; i++) { if (IAcciones.UnidadesDeEscritura >= 0.1f) { IAcciones.UnidadesDeEscritura -= 0.1f; textoRetorno += texto[i]; } } return(new EscrituraWrapper(textoRetorno, IAcciones.Color)); }
static void Main(string[] args) { Console.WriteLine("Elija un método"); //se indica por un switch y se crea int i = 1; IAcciones formato = null; switch (i) { case 1: formato = new InformarBD(); break; case 2: formato = new InformarExcel(); break; } formato.Accion(); }
static void Main(string[] args) { ConsoleColor colorOriginal = Console.ForegroundColor; Lapiz miLapiz = new Lapiz(10); Boligrafo miBoligrafo = new Boligrafo(20, ConsoleColor.Green); IAcciones iAcciones = miLapiz; EscrituraWrapper eLapiz = iAcciones.Escribir("Hola"); Console.ForegroundColor = eLapiz.color; Console.WriteLine(eLapiz.texto); Console.ForegroundColor = colorOriginal; Console.WriteLine(miLapiz); EscrituraWrapper eBoligrafo = miBoligrafo.Escribir("Hola"); Console.ForegroundColor = eBoligrafo.color; Console.WriteLine(eBoligrafo.texto); Console.ForegroundColor = colorOriginal; Console.WriteLine(miBoligrafo); Console.ReadKey(); }
bool IAcciones.Recargar(int unidades) { iAcciones = this; iAcciones.UnidadesDeEscritura = iAcciones.UnidadesDeEscritura + unidades; return(true); }
public Lapiz(int unidades) { iAcciones = this; iAcciones.UnidadesDeEscritura = unidades; }
static void Main(string[] args) { Invocador invocador = new Invocador(); ReceiverPersonaje personaje = null; AdministradorAcciones administradorAcciones; string menuJuego; ConsoleKeyInfo k1; ConsoleKeyInfo k2; do { Console.WriteLine("-- MENÚ --\n\nA. Jugar X. Salir"); k1 = Console.ReadKey(); if (k1.Key == ConsoleKey.A) { personaje = SeleccionarTipoPersonaje(); if (personaje != null) { Console.Clear(); administradorAcciones = IniciarPersonaje(personaje); do { menuJuego = GenerarMenuAcciones(administradorAcciones.dicAcciones); Console.WriteLine(menuJuego); k2 = Console.ReadKey(); IAcciones accion = administradorAcciones.ObtenerAccion(k2.KeyChar.ToString()); if (accion != null) { // ** Ejecución de comandos normales invocador.EstablecerComando(accion); invocador.EjecutarAccion(); // ** Detección de comandos Especiales if (accion == administradorAcciones.ObtenerAccion("1")) { administradorAcciones.AgegarComando(new string[] { "Q", "Disparar Lanzagranadas" }, new AccionDispararLanzagranadas(personaje)); administradorAcciones.RemoverComando("1"); } if (accion == administradorAcciones.ObtenerAccion("2")) { administradorAcciones.AgegarComando(new string[] { "W", "Disparar Rifle de Plasma" }, new AccionDispararRifle(personaje)); administradorAcciones.RemoverComando("2"); } } else { Console.WriteLine("...\n"); } } while (k2.Key != ConsoleKey.X); Console.Clear(); } Console.Clear(); } } while (k1.Key != ConsoleKey.X); }
public ElPardoController(IAcciones acciones) { _acciones = acciones; }
public override string ToString() { IAcciones = this; return(string.Format("Lapiz Color: {0} Tinta: {1:0.00}", IAcciones.Color, IAcciones.UnidadesDeEscritura)); }
bool IAcciones.Recargar(int unidades) { iAcciones = this; throw new NotImplementedException(); }
public void AgegarComando(string[] nAccion, IAcciones accion) { dicAcciones.Add(nAccion, accion); }
public override string ToString() { iAcciones = this; return(String.Format("Lapiz, Color: {0}, Nivel de tinta: {1}", iAcciones.Color, iAcciones.UnidadesDeEscritura)); }
public AccionesController(IAcciones _Context) { Context = _Context; }
public void EstablecerComando(IAcciones acciones) { this.acciones = acciones; }