static void Main(string[] args) { Edificio edif = new Edificio(); edif.crearSalones(1); edif.menu(edif); }
private void AvvioViaggio(object sender, EventArgs e) { PictureBox cellaSelezionata = (PictureBox)sender; //estraggo il numero della cella int indice = int.Parse(cellaSelezionata.Name.Substring(4)); indice--; //perchè i nomi sono conteggiati partendo da 1 //calcolo le coordinate int c_sel = indice % mappa.Colon; int r_sel = (indice - c_selezionato) / mappa.Colon; Edificio destinatario = mappa.CelleEdifici[r_sel, c_sel]; if (destinatario == null) { return; } if (edificioSelezionato.GetType() == typeof(Industria) && destinatario.GetType() == typeof(Fabbrica) || edificioSelezionato.GetType() == typeof(Fabbrica) && destinatario.GetType() == typeof(Negozio)) { menuViaggio.UpdateDirezione(luoghi[prec_r_selezionato, prec_c_selezionato].Text, luoghi[r_sel, c_sel].Text); menuViaggio.Mittente = edificioSelezionato; menuViaggio.Destinatario = destinatario; menuViaggio.Show(); } }
public void Fill(CargarDatosContext datacontext, Int32?_np) { baseFill(datacontext); np = _np ?? 1; var edificios = datacontext.context.Edificio.OrderBy(x => x.Nombre).Where(x => x.Estado == ConstantHelpers.EstadoActivo); foreach (var item in edificios) { LstComboEdificio.Add(new SelectListItem { Value = item.EdificioId.ToString(), Text = item.Nombre }); } var query = datacontext.context.Trabajador .Include(x => x.Edificio) .OrderBy(x => x.Nombres) .OrderBy(x => x.Apellidos) .Where(x => x.Estado == ConstantHelpers.EstadoActivo && x.Edificio.Estado == ConstantHelpers.EstadoActivo) .AsQueryable(); if (EdificioId.HasValue) { Edificio = datacontext.context.Edificio.FirstOrDefault(x => x.EdificioId == EdificioId.Value); query = query.Where(x => x.EdificioId == EdificioId.Value); } LstTrabajador = query.ToList();// (np.Value, ConstantHelpers.DEFAULT_PAGE_SIZE); }
public async Task <IHttpActionResult> AtualizarAsync(string id, [FromBody] EdificioModel obj) { if (String.IsNullOrWhiteSpace(id) || String.IsNullOrWhiteSpace(obj.Nome) || String.IsNullOrWhiteSpace(obj.Endereco) || String.IsNullOrWhiteSpace(obj.UF) || String.IsNullOrWhiteSpace(obj.Pais)) { return(ResponseMessage(Request.CreateResponse <string>(HttpStatusCode.NotAcceptable, "Necessário informar campos: Id , Nome, Endereco, UF e Pais."))); } try { Edificio edificio = new Edificio(obj.Id, obj.Nome, obj.Endereco, obj.UF, obj.Pais); var result = await _edificioRepository.Update(id, edificio); if (result != null) { return(ResponseMessage(Request.CreateResponse(HttpStatusCode.OK))); } else { return(ResponseMessage(Request.CreateResponse(HttpStatusCode.NotFound, "Edificio não localizado."))); } } catch (Exception erro) { return(ResponseMessage(Request.CreateResponse(HttpStatusCode.InternalServerError, "Ocorreu um erro ao tentar processar a requisição."))); } }
public IHttpActionResult PutEdificio(int id, Edificio edificio) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != edificio.ID_Edificio) { return(BadRequest()); } db.Entry(edificio).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!EdificioExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public async Task <IActionResult> Put(Edificio model, string Token) { var TokenApi = new Token { TokenDef = _config.GetValue <string>("Token:TokenDef") }; if (TokenApi.TokenDef != Token) { return(this.StatusCode(StatusCodes.Status401Unauthorized, $"O Token informado não é autorizado.")); } try { var Edificio = await _repo.GetEdificioByIdAsync(model.Id); if (Edificio == null) { return(NotFound()); } _repo.Update(model); if (await _repo.SaveChangesAsync()) { return(this.StatusCode(StatusCodes.Status200OK, model)); } } catch (System.Exception ex) { return(this.StatusCode(StatusCodes.Status500InternalServerError, $"Banco de Dados Falhou.{ex.Message}")); } return(BadRequest()); }
public async Task <IActionResult> Post(Edificio model, string Token) { var TokenApi = new Token { TokenDef = _config.GetValue <string>("Token:TokenDef") }; if (TokenApi.TokenDef != Token) { return(this.StatusCode(StatusCodes.Status401Unauthorized, $"O Token informado não é autorizado.")); } try { var Edificio = await _repo.GetEdificioByNameAsync(model.Nome); if (Edificio != null) { return(this.StatusCode(StatusCodes.Status401Unauthorized, "Parceiro ja existe.")); } _repo.Add(model); if (await _repo.SaveChangesAsync()) { return(Created($"/api/Edificios/GetById/{model.Id}", model)); } } catch (System.Exception ex) { return(this.StatusCode(StatusCodes.Status500InternalServerError, $"Banco de Dados Falhou.{ex.Message}")); } return(BadRequest()); }
private void button1_Click(object sender, EventArgs e) { BinaryFormatter formatter = new BinaryFormatter(); Stream mistream = new FileStream("Personas.bin", FileMode.OpenOrCreate, FileAccess.Read, FileShare.ReadWrite); if (mistream.Length != 0) { personas = (List <Persona>)formatter.Deserialize(mistream); } mistream.Close(); BinaryFormatter formatter1 = new BinaryFormatter(); Stream mistreamc = new FileStream("Credenciales.bin", FileMode.OpenOrCreate, FileAccess.Read, FileShare.ReadWrite); if (mistreamc.Length != 0) { credenciales = (List <Credencial>)formatter1.Deserialize(mistreamc); } mistreamc.Close(); BinaryFormatter formattere = new BinaryFormatter(); Stream mistreame = new FileStream("Edificios.bin", FileMode.OpenOrCreate, FileAccess.Read, FileShare.ReadWrite); if (mistreame.Length != 0) { edificio = (Edificio)formatter1.Deserialize(mistreame); } mistreame.Close(); this.Close(); th = new Thread(openLogin); th.SetApartmentState(ApartmentState.STA); th.Start(); }
public void updateEdificio(Edificio edificio) { try { var ediE = ctx.Edificio .Where(w => w.id == edificio.id) .SingleOrDefault(); if (ediE != null) { ediE.id = edificio.id; ediE.descripcion = edificio.descripcion; ediE.foto = edificio.foto; ediE.ataque = edificio.ataque; ediE.escudo = edificio.escudo; ediE.efectividadAtaque = edificio.efectividadAtaque; ediE.vida = edificio.vida; ediE.nombre = edificio.nombre; ediE.tiempoInicial = edificio.tiempoInicial; ediE.incrementoTiempo = edificio.incrementoTiempo; ctx.SaveChangesAsync().Wait(); } } catch (Exception ex) { throw ex; } }
public ActionResult Create(Edificio edificio, string submitButton, int?tecnicoId) { GetAllOptionsTecnicos(); if (ModelState.IsValid) { switch (submitButton) { case "Crear": List <Persona> tecBase = new List <Persona>(); foreach (var item in edificio.Tecnicos) { tecBase.Add(db.Personas.Find(item.Id)); } edificio.Tecnicos = tecBase; db.Edificios.Add(edificio); db.SaveChanges(); return(RedirectToAction("Index")); case "Agregar Técnico": Persona p = db.Personas.Find(Convert.ToInt32(Request.Form["TecnicosOptions"])); edificio.Tecnicos.Add(p); break; case null: edificio.Tecnicos = edificio.Tecnicos.Where(c => c.Id != tecnicoId).ToList(); break; } } return(View(edificio)); }
private void handlerAsocciateMaterial(Edificio edificio, bool addAll) { if (addAll) { foreach (var item in db.Materiales.ToList()) { if (!existMaterialEnEdificio(item.Id, edificio.Id)) { new EdificiosMaterialesService().Insert(edificio.Id, item.Id); } } } else { int idMaterial = Convert.ToInt32(Request.Form["MaterialesOptions"]); if (!existMaterialEnEdificio(idMaterial, edificio.Id)) { new EdificiosMaterialesService().Insert(edificio.Id, idMaterial); } else { ModelState.AddModelError("Error", "Ya existe material."); } } }
public void Teste_De_Edificil() { var edificio = new Edificio(); edificio.Pinta("Azul"); edificio.Pinta("Amarelo"); var porta1 = new Porta(); var porta2 = new Porta(); var porta3 = new Porta(); var porta4 = new Porta(); var porta5 = new Porta(); var porta6 = new Porta(); edificio.AdicionaPorta(porta1); edificio.AdicionaPorta(porta2); edificio.AdicionaPorta(porta3); edificio.AdicionaPorta(porta4); edificio.AdicionaPorta(porta5); edificio.AdicionaPorta(porta6); porta1.Abre(); porta2.Abre(); edificio.AdicionarAndar(); edificio.AdicionarAndar(); edificio.AdicionarAndar(); edificio.AdicionarAndar(); Assert.AreEqual(edificio.QuantasPortasEstaoAbertas(), 2); Assert.AreEqual(edificio.TotalDeAndar(), 4); Assert.AreEqual(edificio.Cor, "Amarelo"); }
public MenuAdmin(List <Credencial> _credenciales, List <Persona> _personas, Edificio _edificio, Persona _currentUser, int _contador) { InitializeComponent(); personas = _personas; credenciales = _credenciales; edificio = _edificio; currentUser = _currentUser; contadorSala = _contador; //ALUMNOS personasBinding.DataSource = personas; LBAlumnos.DataSource = personasBinding; LBAlumnos.ValueMember = "DisplayAlumno"; LBAlumnos.DisplayMember = "DisplayAlumno"; //SALAS DISPONIBLES salasBinding.DataSource = edificio.salas; LBSalasDisponibles.DataSource = salasBinding; LBSalasDisponibles.ValueMember = "Display"; LBSalasDisponibles.DisplayMember = "Display"; //Sala Arrendada salaNoDisponibleBinding.DataSource = edificio.salasNo; LBSalasNoDisponibles.DataSource = salaNoDisponibleBinding; LBSalasNoDisponibles.ValueMember = "DisplayAdmin"; LBSalasNoDisponibles.DisplayMember = "DisplayAdmin"; }
public void Fill(CargarDatosContext datacontext, Int32 EdificioId, Int32?UnidadTiempoId) { baseFill(datacontext); this.EdificioId = EdificioId; this.UnidadTiempoId = UnidadTiempoId; LstTrabajadores = datacontext.context.Trabajador.Where(x => x.EdificioId == EdificioId && x.Estado == ConstantHelpers.EstadoActivo).ToList(); var lstunidadtiempo = datacontext.context.UnidadTiempo.OrderByDescending(x => x.Anio).OrderByDescending(x => x.Mes).Where(x => x.Estado == ConstantHelpers.EstadoActivo); foreach (var item in lstunidadtiempo) { LstComboUnidadTiempo.Add(new SelectListItem { Value = item.UnidadTiempoId.ToString(), Text = item.Descripcion.ToUpper() }); } Edificio = datacontext.context.Edificio.Find(EdificioId); foreach (var item in LstTrabajadores) { PlanillaQuincena p = datacontext.context.PlanillaQuincena.Where(x => x.TrabajadorId == item.TrabajadorId && x.UnidadTiempoId == UnidadTiempoId).FirstOrDefault(); LstPlanilla.Add(p); } }
/// <summary> /// Adrián Serrano /// 5/28/2019 /// Efecto: devuelve una lista con todos los edificios /// Requiere: - /// Modifica: - /// Devuelve: lista de edificios /// </summary> /// <param></param> /// <returns><code>List<Edificio></code></returns> public List <Edificio> getEdificios() { List <Edificio> listaEdificios = new List <Edificio>(); SqlConnection sqlConnection = conexion.conexionCMEC(); SqlCommand sqlCommand = new SqlCommand("select id_edificio, nombre from Edificio where id_edificio !=1006 ;", sqlConnection); SqlDataReader reader; sqlConnection.Open(); reader = sqlCommand.ExecuteReader(); while (reader.Read()) { Edificio edificio = new Edificio(); edificio.idEdificio = Convert.ToInt32(reader["id_edificio"].ToString()); edificio.nombre = reader["nombre"].ToString(); listaEdificios.Add(edificio); } sqlConnection.Close(); return(listaEdificios); }
private static EdificioSerializable getEdificioSerializable(Edificio edi) { EdificioSerializable resultado = new EdificioSerializable(); resultado.compAvzConsumidosPorTurno = edi.compAvzConsumidosPorTurno; resultado.compAvzProducidosPorTurno = edi.compAvzProducidosPorTurno; resultado.compBasConsumidosPorTurno = edi.compBasConsumidosPorTurno; resultado.compBasProducidosPorTurno = edi.compBasProducidosPorTurno; resultado.energiaConsumidaPorTurno = edi.energiaConsumidaPorTurno; resultado.energiaProducidaPorTurno = edi.energiaProducidaPorTurno; resultado.matBioConsumidoPorTurno = edi.matBioConsumidoPorTurno; resultado.matBioProducidoPorTurno = edi.matBioProducidoPorTurno; resultado.idSer = edi.idSer; resultado.posX = edi.posX; resultado.posY = edi.posY; resultado.radioAccion = edi.radioAccion; resultado.modelo = getModeloSerializable(edi.tipo); resultado.tipo = getTipoEdifSerializable(edi.tipo); resultado.eficiencia = edi.eficiencia; resultado.numMetales = edi.numMetales; resultado.matBioSinProcesar = edi.matBioSinProcesar; resultado.radioAccion = edi.radioAccion; resultado.matrizRadioAccion = new List <Tupla <int, int, bool> >(); for (int i = 0; i < edi.matrizRadioAccion.Count; i++) { Tupla <int, int, bool> tupla = new Tupla <int, int, bool>(); tupla.e1 = edi.matrizRadioAccion[i].e1; tupla.e2 = edi.matrizRadioAccion[i].e2; tupla.e3 = edi.matrizRadioAccion[i].e3; resultado.matrizRadioAccion.Add(tupla); } return(resultado); }
public ActionResult Associate(Edificio edificio, string submitButton, int?materialId) { GetAllOptionsMaterial(); switch (submitButton) { case "Agregar Material": handlerAsocciateMaterial(edificio, false); break; case "Guardar": handlerUpdateAsocciate(edificio); return(RedirectToAction("Index")); case "Agregar todo": handlerAsocciateMaterial(edificio, true); break; case null: var materialToDelete = edificio.EdificiosMateriales.Find(c => c.MaterialId == materialId); if (materialToDelete != null) { db.Entry(materialToDelete).State = EntityState.Deleted; db.SaveChanges(); } break; default: break; } return(View(db.Edificios.Find(edificio.Id))); }
public async Task <IActionResult> Edit(int id, [Bind("Id,Direccion,Numero,Barrio")] Edificio edificio) { if (id != edificio.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(edificio); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!EdificioExists(edificio.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(edificio)); }
public List <EspacioFisico> ObtenerEspaciosFisicosDesdeLaBase() { var tablaDatos = conexion.Ejecutar("dbo.SACC_Get_Espacios_Fisicos"); var espacios_fisicos = new List <EspacioFisico>(); tablaDatos.Rows.ForEach(row => { string direccion = row.GetString("DireccionEdificio") + " " + row.GetSmallintAsInt("NumeroEdificio"); Area Area = new Area(row.GetSmallintAsInt("IdArea"), row.GetString("NombreArea")); Edificio edificio_aux = new Edificio(row.GetSmallintAsInt("idEdificio"), row.GetString("NombreEdificio"), direccion, Area); EspacioFisico espacio_fisico = new EspacioFisico { Id = row.GetSmallintAsInt("id"), Aula = row.GetString("Aula"), Edificio = edificio_aux, Capacidad = row.GetSmallintAsInt("Capacidad") }; espacios_fisicos.Add(espacio_fisico); }); espacios_fisicos.Sort((espacio_fisico1, espacio_fisico2) => espacio_fisico1.esMayorAlfabeticamenteQue(espacio_fisico2)); return(espacios_fisicos); }
// Update is called once per frame void LateUpdate() { if (nombreDelEdificio != "") { estaConstruyendo = true; if (Input.GetAxis("Mouse X") != 0 || Input.GetAxis("Mouse Y") != 0) { //generamos un rayo hacia el piso con la posicion del mouse para poner el edificio Ray rayo = Camera.main.ScreenPointToRay(Input.mousePosition); if (Physics.Raycast(rayo, out hit, Mathf.Infinity, mascaraDeConstruccion)) //Si esto pasa le asignamos al edificio la posicion { if (Edificio != null) { Edificio.transform.position = hit.point; } } else // esto pasa cuando se sale del mapa { } } if (Edificio == null) // para evitar error cuando se cancela y se va a instanciar otra construccion { return; } if (Input.GetKeyDown(KeyCode.R)) // si presiona esta tecla el edificio que esta ubicando lo puede rotar 90 grados { Edificio.transform.Rotate(new Vector3(0, 90, 0)); } if (Input.GetMouseButtonDown(0) && !Edificio.transform.GetComponentInChildren <Colisionador> ().colision) // terminamos de colocar la edificacion en una posicion fija { if (Edificio.GetComponent <Edificacion>().canConstruct()) { Edificio.transform.GetComponentInChildren <Colisionador> ().setDefaultMaterial(); Edificio.transform.GetComponentInChildren <Colisionador> ().enabled = false; Edificio.GetComponent <Edificacion> ().enabled = true; //aqui activamos el componente externo el edificio ya sea base, generador, cuartel etc actualizarInformacionUI(Edificio); nombreDelEdificio = string.Empty; } else { Debug.Log("No me pude construir"); } estaConstruyendo = false; UIManager.UImanager.panelEdificaciones.SetActive(true); } if (Input.GetMouseButtonDown(1)) //Si hacemos click derecho es porque el usuario cancelo la construccion entonces destruimos el objeto actual y vaciamos el modo de construir hasta nuevo aviso { Destroy(Edificio.gameObject); crearEdificacion(string.Empty); nombreDelEdificio = string.Empty; estaConstruyendo = false; UIManager.UImanager.panelEdificaciones.SetActive(true); } } }
public Menu(List <Credencial> _credenciales, List <Persona> _personas, Edificio _edificio, Persona _currentUser, int _contador) { InitializeComponent(); credenciales = _credenciales; personas = _personas; edificio = _edificio; currentUser = _currentUser; contador = _contador; //ACCESORIOS DISPONIBLES ALUMNOS if (currentUser.cargo == "ALUMNO") { accesoriosBinding.DataSource = edificio.accesoriosAlumno; ListaAcsesorios.DataSource = accesoriosBinding; ListaAcsesorios.DisplayMember = "DisplayA"; ListaAcsesorios.ValueMember = "DisplayA"; } //ACCESORIOS DISPONIBLES ALUMNOS else if (currentUser.cargo == "PROFESOR") { accesoriosBinding.DataSource = edificio.accesoriosProfessor; ListaAcsesorios.DataSource = accesoriosBinding; ListaAcsesorios.DisplayMember = "DisplayA"; ListaAcsesorios.ValueMember = "DisplayA"; } //SALAS DISPONIBLES salasBinding.DataSource = edificio.salas; SalasDisponibles.DataSource = salasBinding; SalasDisponibles.ValueMember = "Display"; SalasDisponibles.DisplayMember = "Display"; //CARRITO carritoBinding.DataSource = carrito; Carrito.DataSource = carritoBinding; Carrito.DisplayMember = "DisplayA"; Carrito.ValueMember = "DisplayA"; //Sala Arrendada salaArrendadaBinding.DataSource = salaArrendada; SalaArrendadaL.DataSource = salaArrendadaBinding; SalaArrendadaL.ValueMember = "Display"; SalaArrendadaL.DisplayMember = "Display"; //Total Compra totalBinding.DataSource = total; TotalL.DataSource = totalBinding; SalaArrendadaL.ValueMember = "Display"; }
private void handlerUpdateAsocciate(Edificio edificio) { foreach (var item in edificio.EdificiosMateriales) { db.Entry(item).State = EntityState.Modified; db.SaveChanges(); } }
private void agregarEdificios(){ edificios[0]=new Edificio("catedral","1730 a 1760 aunque en el lugar han existido iglesias desde 1559","Anonimo","Torre Norte terminada en\n1904"); edificios[1]=new Edificio("Santo Domingo","1746 a 1749","Orden de los Jesuitas","Fue avandonada en 1767 al ser expulsada la orden de los Jesuitas\ny siendo ocupado en 1785 por la Orden de los Dominicos"); edificios[2]=new Edificio("Guadalupito","12 de agosto de 1891","el muy ilustre canónigo José Anastasio Díaz López","La obra material estuvo a cargo del arquitecto \nzacatecano Refugio Reyes\nEl lienzo con la Virgen Morena que fue\nrealizado en el siglo XVIII por José de Alzíbar"); edificios[3]=new Edificio("Mercado Gral. Jesús González Ortega","1886","Ing. Carlos Suárez Fiallo","contaba con un piso más que fue destruido en un incendio en 1901"); edificios[4]=new Edificio("Portal de Rosales","1827","Anonimo","Anteriormente era una carcel y al terminar la guerra de independencia\nse construyo como monumento al insurgente Rosales"); }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { Edificio edificio = (Edificio)Session["edificioVer"]; txtNombreEdificio.Text = edificio.nombre; } }
public ActionResult DeleteConfirmed(int id) { Edificio edificio = db.Edificios.Find(id); db.Edificios.Remove(edificio); db.SaveChanges(); return(RedirectToAction("Index")); }
public MenuCuenta(List <Credencial> _credenciales, List <Persona> _personas, Edificio _edificio, Persona _currentUser, int _contador) { InitializeComponent(); credenciales = _credenciales; personas = _personas; contador = _contador; edificio = _edificio; }
public Login(List <Credencial> _credenciales, List <Persona> _personas, Edificio _edificio, Persona _currentUser, int _contador) { InitializeComponent(); credenciales = _credenciales; personas = _personas; edificio = _edificio; currentUser = new Persona(); contadorSala = _contador; }
public InicialRun() { InitializeComponent(); credenciales = new List <Credencial>(); personas = new List <Persona>(); edificio = new Edificio(); currentUser = new Persona(); setupData(); }
public bool ModificarEdificio(Edificio edificio) { System.Data.Objects.ObjectResult objectResponse = _entitiesManager.Context.msp_ModificarEdificio(edificio.Id, edificio.Inmueble.Id_Ubi_Detalle, edificio.Nombre, edificio.Inmueble.A_Construccion, edificio.N_Plantas, edificio.Inmueble.Inf_adicional, edificio.Inmueble.Foto, edificio.Inmueble.Id); foreach (int r in objectResponse) { return(r == 1 ? true : false); } return(false); }
public void TestInstanciaEdificio() { Edificio edificio = new Edificio("Edifio teste", "Rua teste do testei", "tes", "tesil"); Assert.Equal(edificio.Nome, "Edifio teste"); Assert.Equal(edificio.Endereco, "Rua teste do testei"); Assert.Equal(edificio.UF, "tes"); Assert.Equal(edificio.Pais, "tesil"); }
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { Edificio edificio = (Edificio)Session["edificioEditar"]; txtNombreEdificio.Text = edificio.nombre; txtNombreEdificio.Attributes.Add("oninput", "validarTexto(this)"); } }
private void agregarEdificios() { edificios[0]=new Edificio("catedral","1730 a 1760 aunque en el lugar han existido iglesias desde 1559","Anonimo","Torre Norte terminada en\n1904"); edificios[1]=new Edificio("portales","1657-4524","Tu mama","mc donals"); edificios[2]=new Edificio("santo domingo","1427-1988","Tu","es una iglesia"); }
private static EdificioSerializable getEdificioSerializable(Edificio edi) { EdificioSerializable resultado = new EdificioSerializable(); resultado.compAvzConsumidosPorTurno = edi.compAvzConsumidosPorTurno; resultado.compAvzProducidosPorTurno = edi.compAvzProducidosPorTurno; resultado.compBasConsumidosPorTurno = edi.compBasConsumidosPorTurno; resultado.compBasProducidosPorTurno = edi.compBasProducidosPorTurno; resultado.energiaConsumidaPorTurno = edi.energiaConsumidaPorTurno; resultado.energiaProducidaPorTurno = edi.energiaProducidaPorTurno; resultado.matBioConsumidoPorTurno = edi.matBioConsumidoPorTurno; resultado.matBioProducidoPorTurno = edi.matBioProducidoPorTurno; resultado.idSer = edi.idSer; resultado.posX = edi.posX; resultado.posY = edi.posY; resultado.radioAccion = edi.radioAccion; resultado.modelo = getModeloSerializable(edi.tipo); resultado.tipo = getTipoEdifSerializable(edi.tipo); resultado.eficiencia = edi.eficiencia; resultado.numMetales = edi.numMetales; resultado.matBioSinProcesar = edi.matBioSinProcesar; resultado.radioAccion = edi.radioAccion; resultado.matrizRadioAccion = new List<Tupla<int, int, bool>>(); for (int i = 0; i < edi.matrizRadioAccion.Count; i++) { Tupla<int, int, bool> tupla = new Tupla<int, int, bool>(); tupla.e1 = edi.matrizRadioAccion[i].e1; tupla.e2 = edi.matrizRadioAccion[i].e2; tupla.e3 = edi.matrizRadioAccion[i].e3; resultado.matrizRadioAccion.Add(tupla); } return resultado; }
//Devuelve false si el edificio ya existe (no se añade) y true si se añade correctamente public bool anadeEdificio(TipoEdificio tipoEdificio,int posX,int posY,float eficiencia,int numMetales,List<Tupla<int,int,bool>> matrizRadioAccion,int radioAccion) { if(tieneEdificio(posX,posY) || !tipoEdificio.tieneHabitat(tablero[posX,posY].habitat)) return false; GameObject modelo = tipoEdificio.modelos[UnityEngine.Random.Range(0,tipoEdificio.modelos.Count)]; Vector3 coordsVert = tablero[posX,posY].coordsVert; Edificio edificio = new Edificio(idActualEdificio,tipoEdificio,posX,posY,eficiencia,numMetales,matrizRadioAccion,radioAccion,FuncTablero.creaMesh(coordsVert,modelo)); edificio.modelo.transform.position = objetoRoca.TransformPoint(edificio.modelo.transform.position); seres.Add(edificio); //int turno = (turnoActual + tipoEdificio.siguienteTurno)%numMaxTurnos; //listadoSeresTurnos[turno].Add(edificio); idActualEdificio++; edificios.Add(edificio); if(tablero[posX,posY].animal != null) eliminaAnimal(tablero[posX,posY].animal); if(tablero[posX,posY].vegetal != null) eliminaVegetal(tablero[posX,posY].vegetal); tablero[posX,posY].edificio = edificio; return true; }
//Elimina un edificio, si no existe devuelve false public bool eliminaEdificio(Edificio edificio) { if(!edificios.Contains(edificio)) return false; UnityEngine.Object.Destroy(edificio.modelo); //listadoSeresTurnos[turnoActual].Remove(edificio); tablero[edificio.posX,edificio.posY].edificio = null; seres.Remove(edificio); edificios.Remove(edificio); return true; }
public Casilla(T_habitats hab, T_elementos elems, Vector2 coord, Vector3 vert) { habitat = hab; elementos = elems; coordsTex = coord; vegetal = null; animal = null; edificio = null; coordsVert = vert; }
private bool seleccionarObjetoTablero() { int x = 0; int y = 0; RaycastHit hit; if (principal.raycastRoca (Input.mousePosition, ref x, ref y, out hit)) { Edificio edificio = principal.vida.tablero[y, x].edificio; Vegetal vegetal = principal.vida.tablero[y, x].vegetal; Animal animal = principal.vida.tablero[y, x].animal; infoSeleccion.Clear (); animalSeleccionado = null; vegetalSeleccionado = null; edificioSeleccionado = null; if (animal != null || vegetal != null || edificio != null) { if (animal != null) { infoSeleccion.Add (animal.especie.nombre); //Cadena infoSeleccion[0] TiposSeres tiposSeres = GameObject.FindGameObjectWithTag ("TiposSeres").GetComponent<TiposSeres> (); tipoSeleccion = tiposSeres.getNumeroSer(animal.especie); infoSeleccion.Add (tiposSeres.getDescripcion (tipoSeleccion)); //Cadena infoSeleccion[1] habitabilidadSeleccion[0] = (animal.especie.habitats.Contains (T_habitats.montana)) ? 1 : -1; habitabilidadSeleccion[1] = animal.especie.habitats.Contains (T_habitats.llanura) ? 1 : -1; habitabilidadSeleccion[2] = animal.especie.habitats.Contains (T_habitats.colina) ? 1 : -1; habitabilidadSeleccion[3] = animal.especie.habitats.Contains (T_habitats.desierto) ? 1 : -1; habitabilidadSeleccion[4] = animal.especie.habitats.Contains (T_habitats.volcanico) ? 1 : -1; habitabilidadSeleccion[6] = animal.especie.habitats.Contains (T_habitats.costa) ? 1 : -1; habitabilidadSeleccion[7] = animal.especie.habitats.Contains (T_habitats.tundra) ? 1 : -1; animalSeleccionado = animal; return true; } else if (vegetal != null) { infoSeleccion.Add (vegetal.especie.nombre); //Cadena infoSeleccion[0] TiposSeres temp = GameObject.FindGameObjectWithTag ("TiposSeres").GetComponent<TiposSeres> (); tipoSeleccion = temp.getNumeroSer(vegetal.especie); infoSeleccion.Add (temp.getDescripcion (tipoSeleccion)); //Cadena infoSeleccion[1] habitabilidadSeleccion[0] = vegetal.habitabilidad[0]; habitabilidadSeleccion[1] = vegetal.habitabilidad[1]; habitabilidadSeleccion[2] = vegetal.habitabilidad[2]; habitabilidadSeleccion[3] = vegetal.habitabilidad[3]; habitabilidadSeleccion[4] = vegetal.habitabilidad[4]; habitabilidadSeleccion[6] = vegetal.habitabilidad[6]; habitabilidadSeleccion[7] = vegetal.habitabilidad[7]; vegetalSeleccionado = vegetal; return true; } else if (edificio != null) { infoSeleccion.Add (edificio.tipo.nombre); //Cadena infoSeleccion[0] TiposSeres temp = GameObject.FindGameObjectWithTag ("TiposSeres").GetComponent<TiposSeres> (); tipoSeleccion = temp.getNumeroSer(edificio.tipo); infoSeleccion.Add (temp.getDescripcion (tipoSeleccion)); //Cadena infoSeleccion[1] habitabilidadSeleccion[0] = edificio.tipo.habitats.Contains (T_habitats.montana) ? 1 : -1; habitabilidadSeleccion[1] = edificio.tipo.habitats.Contains (T_habitats.llanura) ? 1 : -1; habitabilidadSeleccion[2] = edificio.tipo.habitats.Contains (T_habitats.colina) ? 1 : -1; habitabilidadSeleccion[3] = edificio.tipo.habitats.Contains (T_habitats.desierto) ? 1 : -1; habitabilidadSeleccion[4] = edificio.tipo.habitats.Contains (T_habitats.volcanico) ? 1 : -1; habitabilidadSeleccion[6] = edificio.tipo.habitats.Contains (T_habitats.costa) ? 1 : -1; habitabilidadSeleccion[7] = edificio.tipo.habitats.Contains (T_habitats.tundra) ? 1 : -1; //TODO Poner aqui la info escrita que necesitemos para los edificios edificioSeleccionado = edificio; return true; } } //Si la casilla esta vacia... tipoSeleccion = -1; return false; } //Si el raycast falla... tipoSeleccion = -1; return false; }