Beispiel #1
0
 public ListaPersonaje()
 {
     InitializeComponent();
     foreach (TerceraEntrega.Domain.Personaje p in PersonajeBL.Listar())
     {
         dataSource.Add(new PersonajeViewModel(p));
     }
     view = CollectionViewSource.GetDefaultView(dataSource);
     ListaPersonajes.ItemsSource = view;
 }
Beispiel #2
0
        private void eliminar(object sender, RoutedEventArgs e)
        {
            Button             button    = sender as Button;
            PersonajeViewModel viewModel = button.DataContext as PersonajeViewModel;
            int id = viewModel.Id;

            PersonajeCaracteristicaBL.eliminarPersonajeCarcteristicasPorPersonaje(id);
            PersonajeBL.Eliminar(PersonajeBL.Obtener(id));
            dataSource.Remove(viewModel);
            view.Refresh();
        }
		private void Button_Click(object sender, RoutedEventArgs e)
		{
			CaracteristicaVariable SelectItem = (CaracteristicaVariable)Lista.SelectedItem;

			HabilidadEspecial SelectItem2 = (HabilidadEspecial)Lista2.SelectedItem;

			List<PersonajeCaracteristica> caracteristicasPersonaje = PersonajeCaracteristicaBL.obtenerCaracteristicaPersonajesPorPersonaje(personaje.Id);

			PersonajeBL.SubirNivel(personaje, SelectItem2, (caracteristicasPersonaje!=null && caracteristicasPersonaje.Count>0 && SelectItem!=null) ? caracteristicasPersonaje.Find(x => x.CaracteristicaVariable.Id == SelectItem.Id):null);

			this.NavigationService.Navigate(new ListaPersonaje());
		}
Beispiel #4
0
        private void btoCargar_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                int  valor    = 0;
                bool completo = false;
                CaracteristicaVariable SelectItem = (CaracteristicaVariable)ListCaracteristica.SelectedItem;
                int IdPersonaje = PersonajeBL.Listar().Max(x => x.Id);
                foreach (CaracteristicaVariable Car in CaracteristicaVariableBL.Listar())
                {
                    PersonajeCaracteristicaBL.Crear(IdPersonaje, Car.Id, valor);
                }
                valor = Convert.ToInt32(ValorTxt.Text);
                string result = ValorTxt.Text;
                if (result == null || result == "" || !int.TryParse(result, out valor) || valor <= 0 || valor > 10)
                {
                    MessageBox.Show("El valor Ingresado no es el correcto, intente nuevamente", "Error");
                }
                else
                {
                    PersonajeCaracteristica Aux = new PersonajeCaracteristica();
                    Aux.CaracteristicaVariable = SelectItem;
                    Aux.Personaje = PersonajeBL.Obtener(IdPersonaje);
                    Aux.Valor     = valor;
                    PersonajeCaracteristicaBL.Modificar(Aux);
                    MessageBox.Show("Se cargo el valor exitosamente para el Personaje: " + PersonajeBL.Obtener(IdPersonaje).Nombre, "Felicidades");
                }
                foreach (PersonajeCaracteristica PerCar in PersonajeCaracteristicaBL.Listar())
                {
                    foreach (CaracteristicaVariable C in CaracteristicaVariableBL.Listar())
                    {
                        if ((PerCar.Personaje.Id == IdPersonaje) && (PerCar.CaracteristicaVariable.Id == C.Id) && (PerCar.Valor != 0))
                        {
                            completo = true;
                        }
                    }
                }
                if (completo)
                {
                    MessageBox.Show("Has completado todas las caracteristicas variables existentes en el sistema para este Personaje", "Genial!!");
                }
            }


            catch (Exception ex)
            {
                MessageBox.Show("Existe un error" + ex, "Cuidado!!!!");
            }
        }
        public AltaPersonaje(int id, Boolean readOnly)
        {
            InitializeComponent();

            CboRaza.ItemsSource       = RazaBL.Listar();
            CboRaza.SelectedValuePath = "Id";

            CboClase.ItemsSource       = ClaseBL.Listar();
            CboClase.SelectedValuePath = "Id";

            p = PersonajeBL.Obtener(id);
            c = ClaseBL.obtenerPorIdPersonaje(id);
            r = RazaBL.obtenerPorPersonaje(id);

            this.NombreTxt.Text = p.Nombre;
            this.NivelTxt.Text  = p.Nivel.ToString();
            this.FueTxt.Text    = p.Fuerza.ToString();
            this.DesTXT.Text    = p.Destreza.ToString();
            this.ConstTxt.Text  = p.Constitucion.ToString();
            this.InteTxt.Text   = p.Inteligencia.ToString();
            this.SabTxt.Text    = p.Sabiduria.ToString();
            this.CarTxt.Text    = p.Carisma.ToString();
            this.Foto.Source    = LoadImage(p.Imagen);

            this.CboClase.SelectedItem = 1;
            this.CboRaza.SelectedItem  = 1;

            this.Titulo.Content = "Modificar Personaje";
            this.Cargar.Content = "Modificar";

            if (readOnly)
            {
                this.Cargar.Visibility            = Visibility.Hidden;
                this.NombreTxt.IsEnabled          = false;
                this.NivelTxt.IsEnabled           = false;
                this.FueTxt.IsEnabled             = false;
                this.DesTXT.IsEnabled             = false;
                this.ConstTxt.IsEnabled           = false;
                this.InteTxt.IsEnabled            = false;
                this.SabTxt.IsEnabled             = false;
                this.CarTxt.IsEnabled             = false;
                this.CboClase.IsEnabled           = false;
                this.CboRaza.IsEnabled            = false;
                this.ArchivoSelect.Visibility     = Visibility.Hidden;
                this.BotonCargarImagen.Visibility = Visibility.Hidden;
                this.Titulo.Content = "Detalles Personaje";
            }
        }
		public SubirNivel(int id)
		{
			InitializeComponent();


			personaje = PersonajeBL.Obtener(id);

			List<PersonajeCaracteristica> caracteristicasPersonaje = PersonajeCaracteristicaBL.obtenerCaracteristicaPersonajesPorPersonaje(id);

			List<CaracteristicaVariable> carcateristicas = new List<CaracteristicaVariable>();

			foreach (PersonajeCaracteristica i in caracteristicasPersonaje) {
				carcateristicas.Add(i.CaracteristicaVariable);
			}

			Lista.ItemsSource = carcateristicas;

			//agregar habilidad especial

			List<HabilidadEspecial> habilidadesEspeciales = new List<HabilidadEspecial>();

			List<HabilidadEspecial> habilidadesEspecialesAMostrar = new List<HabilidadEspecial>();
			//recorro habilidades especiales de la clase del personaje
			foreach (HabilidadEspecial habilidadClase in ClaseBL.obtenerPorIdPersonaje(personaje.Id).HabilidadesEspeciales)
			{
				//si no esta en el personaje la imprimo
				bool estaEnPersonaje = false;
				foreach (HabilidadEspecial habilidadPersonaje in personaje.HabilidadesEspeciales)
				{
					if (habilidadClase.Id == habilidadPersonaje.Id) estaEnPersonaje = true;
				}
				if (!estaEnPersonaje) habilidadesEspecialesAMostrar.Add(habilidadClase);
			}

			Lista2.ItemsSource = habilidadesEspecialesAMostrar;

			if (((personaje.Nivel + 1) % 2 != 0) && ((personaje.Nivel + 1) != 1))
			{
				Lista.Visibility = Visibility.Hidden;
			}

		}
        private void btoCargar(object sender, RoutedEventArgs e)
        {
            try
            {
                int Nivel        = -1;
                int Fuerza       = -1;
                int Destreza     = -1;
                int Constitucion = -1;
                int Inteligencia = -1;
                int Sabiduria    = -1;
                int Carisma      = -1;

                //Validacion de los valores ingresados
                if (string.IsNullOrEmpty(this.NombreTxt.Text))
                {
                    throw new Exception("Debe especificar un nombre para el personaje");
                }
                if (!int.TryParse(this.NivelTxt.Text, out Nivel) && Nivel > 0 && Nivel < 10)
                {
                    throw new Exception("El nivel especificado no es válido.");
                }
                if (!int.TryParse(this.FueTxt.Text, out Fuerza) && Fuerza > 0 && Fuerza < 10)
                {
                    throw new Exception("El valor de Fuerza especificado no es válido.");
                }
                if (!int.TryParse(this.DesTXT.Text, out Destreza) && Destreza > 0 && Destreza < 10)
                {
                    throw new Exception("El valor de Destreza especificado no es válido.");
                }
                if (!int.TryParse(this.ConstTxt.Text, out Constitucion) && Constitucion > 0 && Constitucion < 10)
                {
                    throw new Exception("El valor de Constitución especificado no es válido.");
                }
                if (!int.TryParse(this.InteTxt.Text, out Inteligencia) && Inteligencia > 0 && Inteligencia < 10)
                {
                    throw new Exception("El valor de Inteligencia especificado no es válido.");
                }
                if (!int.TryParse(this.SabTxt.Text, out Sabiduria) && Sabiduria > 0 && Sabiduria < 10)
                {
                    throw new Exception("El valor de Sabiduria especificado no es válido.");
                }
                if (!int.TryParse(this.CarTxt.Text, out Carisma) && Carisma > 0 && Carisma < 10)
                {
                    throw new Exception("El valor de Carisma especificado no es válido.");
                }
                if (r == null)
                {
                    throw new Exception("Debe Seleccionar una Raza al Personaje");
                }
                if (c == null)
                {
                    throw new Exception("Debe Seleccionar una Clase al Personaje");
                }



                // Asignación de datos al personaje
                p.Nombre       = NombreTxt.Text;
                p.Nivel        = Nivel;
                p.Fuerza       = Fuerza;
                p.Destreza     = Destreza;
                p.Constitucion = Constitucion;
                p.Inteligencia = Inteligencia;
                p.Sabiduria    = Sabiduria;
                p.Carisma      = Carisma;
                p.Imagen       = imagen;


                //Alta del Personaje
                if (p.Id == 0)
                {
                    int newPersonaje = PersonajeBL.Crear(p, c, r);
                    if (newPersonaje > 0)
                    {
                        SetClientMessage("Personaje agregado correctamente!", TipoMensaje.Correcto);
                        this.NavigationService.Navigate(new PerCaracteristica());
                    }
                }
                else
                {
                    PersonajeBL.Modificar(p, c, r);
                    this.NavigationService.Navigate(new ListaPersonaje());
                }
            }
            catch (Exception ex)
            {
                SetClientMessage(ex.Message, TipoMensaje.Error);
            }
        }