// crea un personaje
 public Personaje(Casilla posicion, int resistencia, int velocidad)
     : base(posicion)
 {
     this.resistencia = resistencia;
     this.velocidad = velocidad;
     this.porcentajeDeRetardo = PORCENTAJE_DE_RETARDO;
     this.explotoLaBombaLanzada = true;
     this.estrategiaDeLanzamiento = null;
 }
示例#2
0
 // crea un articulo timer
 public Timer(Casilla posicion)
     : base(posicion)
 { }
示例#3
0
 // crea una bomba molotov
 public Molotov(Casilla posicion)
     : base(posicion, RANGO, RETARDO)
 {
     this.danio = DANIO;
 }
 // puede moverse siempre
 public override bool PuedeMoverseA(Casilla casilla)
 {
     if (casilla.TienePersonaje()) return false;
     return true;
 }
示例#5
0
 // crea a Cecilio 
 public Cecilio(Casilla posicion)
     : base(posicion, RESISTENCIA_INICIAL, VELOCIDAD_INICIAL)
 {
     this.Inicializar();
 }
 // un personaje puede moverse solo si la proxima casilla esta vacia
 public bool PuedeMoverseA(Casilla proximaPosicion)
 {
     if (proximaPosicion.EstaVacia())
         return true;
     return false;
 }
 // un personaje puede moverse solo si la proxima casilla
 // posee objetos que pueden superponerse
 public virtual bool PuedeMoverseA(Casilla proximaPosicion)
 {
     foreach (Entidad entidad in proximaPosicion.GetEntidades())
         if (!entidad.PuedeSuperponerse())
             return false;
     return true;
 }
示例#8
0
 // todo enemigo puede moverse si en la proxima posicioon esta bombita,
 // si esta vacia o si hay un objeto que puede superponerse
 public override bool PuedeMoverseA(Casilla proximaPosicion)
 {
     int indice = 0;
     while (indice < proximaPosicion.CantidadDeEntidades())
     {
         Entidad entidad = proximaPosicion.GetEntidades()[indice];
         if (!entidad.PuedeSuperponerse() /*& !entidad.EsBombita()*/)
             return false;
         indice++;
     }
     return true;
 }
 // crea un obstaculo de acero
 public ObstaculoDeAcero(Casilla posicion)
     : base(posicion)
 {
     this.destruido = false;
 }
示例#10
0
 // crea una bomba tole tole
 public ToleTole(Casilla posicion)
     : base(posicion, RANGO, RETARDO)
 { }
示例#11
0
 public Estallido(Casilla pos)
 {
     this.posicion = pos;
 }
示例#12
0
 // crea una entidad posicionada en una casilla
 public Entidad(Casilla posicion)
 {
     this.direccion = ESTE;
     this.PosicionarEn(posicion);
 }
示例#13
0
 // crea una entidad
 public Entidad()
 {
     this.direccion = ESTE;
     this.posicion = null;
 }
示例#14
0
 // posiciona al objeto en una nueva casilla
 public void PosicionarEn(Casilla posicion)
 {
     this.posicion = posicion;
     this.posicion.AgregarEntidad(this);
 }
        public void GuardarJuego()
        {
            Casilla posicionBombita = new Casilla();
            int x = nivelActual.GetBombita().Posicion().X;
            int y = nivelActual.GetBombita().Posicion().Y;
            posicionBombita.X = x;
            posicionBombita.Y = y;
            XmlSerializer formatter = new XmlSerializer(typeof(Casilla));
            formatter.Serialize(File.OpenWrite("bomberman.xml"), posicionBombita);

            XmlSerializer formatter2 = new XmlSerializer(typeof(int));
            formatter2.Serialize(File.OpenWrite("nivel.xml"), nivelActual.Numero());
        }
示例#16
0
 // crea un enemigo
 public Enemigo(Casilla posicion, int resistencia, int velocidad)
     : base(posicion, resistencia, velocidad)
 {
 }
示例#17
0
 // inicializa los casilleros que compondran al tablero, en principio vacios
 private void InicializarCasillas()
 {
     for (int i = 0; i < MAXIMO_FILA; i++)
         for (int j = 0; j < MAXIMO_COLUMNA; j++)
            casillas [i, j] = new Casilla (i, j);
 }
 // crea a Lopez Reggae
 public LopezReggae(Casilla posicion)
     : base(posicion, RESISTENCIA_INICIAL, VELOCIDAD_INICIAL)
 {
     this.Inicializar();
 }
示例#19
0
 // crea un obstaculo
 public Obstaculo(Casilla posicion)
     : base(posicion)
 {
     this.guardaSalida = false;
 }
 // crea un obstaculo de cemento
 public ObstaculoDeCemento(Casilla posicion)
     : base(posicion)
 {
     this.durabilidad = DURABILIDAD;
 }
示例#21
0
 // crea un articulo habano/chala
 public Habano(Casilla posicion)
     : base(posicion)
 { }
示例#22
0
 // crea un proyectil
 public Proyectil(Casilla posicion)
     : base(posicion, RANGO, RETARDO)
 {
     this.danio = DANIO;
     this.retardoDeMovimiento = 0;
 }
示例#23
0
 // crea un articulo salida
 public Salida(Casilla posicion)
     : base(posicion)
 {
 }
示例#24
0
 // crea un articulo
 public Articulo(Casilla posicion)
     : base(posicion)
 {
     this.capturado = false;
 }
 // crea un articulo bomba tole tole
 public BombaToleTole(Casilla posicion)
     : base(posicion)
 { }