/// <summary> /// Genera la disposición de los árboles en el mapa /// TODO: hacer que no se toquen... /// </summary> private void CreateTrees(int cantidad) { TgcMesh tree = Loader.loadSceneFromFile(MediaDir + "Meshes\\Pino\\Pino-TgcScene.xml").Meshes[0]; if (null == Objetos) { Objetos = new List <InteractiveObject>(); } TgcMesh instance; for (int i = 1; i <= cantidad; i++) { instance = tree.createMeshInstance(tree.Name + "_" + i); instance.Scale = GameUtils.getRandomScaleVector(); instance.Position = GameUtils.getRandomPositionVector(); instance.Transform = Matrix.Scaling(instance.Scale) * Matrix.Translation(instance.Position); instance.updateBoundingBox(); instance.AlphaBlendEnable = true; InteractiveObject interactiveObject = new InteractiveObject("Tree", 5, instance, InteractiveObject.Materials.Wood, InteractiveObject.ObjectTypes.Tree); interactiveObject.drops.Add(InventoryObject.ObjectTypes.Wood); interactiveObject.drops.Add(InventoryObject.ObjectTypes.Leaf); Objetos.Add(interactiveObject); } }
public async Task OnPostAsync(string pesquisa) { Pesquisa = pesquisa; // pesquisa produtos var produtos = await _context.Produtos.Include(p => p.Categoria) .Where(p => p.Nome.IndexOf(pesquisa, StringComparison.OrdinalIgnoreCase) >= 0 || p.Descricao.IndexOf(pesquisa, StringComparison.OrdinalIgnoreCase) > 0) .OrderByDescending(p => p.Visualizacoes) .ThenByDescending(p => p.QuantidadeLances) .ThenByDescending(p => p.Nome) .ToListAsync(); foreach (var item in produtos) { Objetos.Add(new SearchView() { Id = item.Id, Tipo = SearchObject.Produto, Texto = item.Nome, Subtexto = item.Categoria.Descricao + ";" + item.Estado + ";" + item.ValorInicial.ToString("0") + ";" + item.ValorAtual.ToString("0") + ";" + item.QuantidadeLances + ";" + item.Visualizacoes + ";" + item.TotalFotos, Imagem = item.FotoPrincipal }); } }
// TODO modificar, por ahora es de ejemplo private void CreateObjects(int cantidad) { TgcMesh teapotMesh = Loader.loadSceneFromFile(MediaDir + "Meshes\\Teapot\\Teapot-TgcScene.xml").Meshes[0]; teapotMesh.Scale = new Vector3(0.5f, 0.5f, 0.5f); if (null == Objetos) { Objetos = new List <InteractiveObject>(); } TgcMesh instance; for (int i = 1; i <= cantidad; i++) { instance = teapotMesh.createMeshInstance(teapotMesh.Name + "_" + i); //instance.Scale = GameUtils.getRandomScaleVector(); instance.Position = GameUtils.getRandomPositionVector(); instance.Transform = Matrix.Scaling(instance.Scale) * Matrix.Translation(instance.Position); instance.updateBoundingBox(); InteractiveObject interactiveObject = new InteractiveObject("Teapot", 3, instance, InteractiveObject.Materials.Glass, InteractiveObject.ObjectTypes.Misc); interactiveObject.drops.Add(InventoryObject.ObjectTypes.Water); interactiveObject.drops.Add(InventoryObject.ObjectTypes.Water); Objetos.Add(interactiveObject); } }
public void AddObjeto(Objeto objeto) { if (objeto.Valid) { Objetos.Add(objeto); } }
public void AdicionarRegistro(string DataEvento, string CodigoEvento, string CodigoUsuario) { UInt16 ano = UInt16.Parse(DataEvento.Substring(0, 4)); /* Para representar o ano utilizamos 16 bits 0 - 65535 */ byte mes = byte.Parse(DataEvento.Substring(4, 2)); /* Para o mês utilizamos 8bits 0 - 255 */ byte dia = byte.Parse(DataEvento.Substring(6, 2)); /* O mesmo para o dia */ byte hora = byte.Parse(DataEvento.Substring(8, 2)); /*O mesmo para hora */ byte minuto = byte.Parse(DataEvento.Substring(10, 2)); /* O mesmo para minuto */ byte segundos = byte.Parse(DataEvento.Substring(12, 2)); /* O mesmo para segundo */ UInt16 milissegundos = UInt16.Parse(DataEvento.Substring(14, 3)); /* Milissegundos vai de 0 - 999, portanto 16bits */ long codEvento = Int64.Parse(CodigoEvento, System.Globalization.NumberStyles.HexNumber); /* Codigo do evento * representando em valor numero, utilizando apenas 32 bits, com string seria necessario 64bits */ DateTime data = new DateTime(ano, mes, dia, hora, minuto, segundos, milissegundos); Registro registro = new Registro(data.Ticks, ulong.Parse(CodigoUsuario)); // Cria um registro // Indexação DateTime DateDictionary = new DateTime(ano, mes, dia, hora, 0, 0); Dictionary <long, List <Registro> > DicRegistros; /* Datetime.Ticks = representação numerica da data */ if (Objetos.TryGetValue(DateDictionary.Ticks, out DicRegistros)) // Verifica se aquela data ja foi indexada { // Caso afirmativo referencia ela com DicRegistros List <Registro> ListRegistros; if (DicRegistros.TryGetValue(codEvento, out ListRegistros)) // Verifica se um evento ja foi indexado { // Caso afirmativa referencia com ListRegistro ListRegistros.Add(registro); // Adiciona o registro } else { ListRegistros = new List <Registro>(); ListRegistros.Add(registro); DicRegistros.TryAdd(codEvento, ListRegistros); // Caso o evento não tenha sido indexado, ele é indexado e adicionado o registro } } else // Se a data não foi indexada, ela é feita, bem como o evento a ser lido e posteriormente adicionado o registro { var ListRegistros = new List <Registro>(); ListRegistros.Add(registro); var DicEventos = new Dictionary <long, List <Registro> >(); DicEventos.Add(codEvento, ListRegistros); Objetos.Add(DateDictionary.Ticks, DicEventos); } }
public bool Salvar(Fornecedor fornecedor, bool Editando) { if (fornecedor == null) { return(false); } if (Editando) { for (int i = 0; i < Objetos.Count; i++) { if (Objetos[i].Equals(fornecedor)) { Objetos[i] = fornecedor; } } } else { Objetos.Add(fornecedor); } return(true); }
public bool Salvar(Produto produto, bool editando) { if (produto == null) { return(false); } if (editando) { for (int i = 0; i < Objetos.Count; i++) { if (Objetos[i].Equals(produto)) { Objetos[i] = produto; } } } else { Objetos.Add(produto); } return(true); }
/// <summary> /// Genera las piedras en el mapa /// </summary> /// <param name="cantidad"></param> private void CreateRocks(int cantidad) { TgcMesh rock = Loader.loadSceneFromFile(MediaDir + "Meshes\\Roca\\Roca-TgcScene.xml").Meshes[0]; if (null == Objetos) { Objetos = new List <InteractiveObject>(); } TgcMesh instance; for (int i = 1; i <= cantidad; i++) { instance = rock.createMeshInstance(rock.Name + "_" + i); instance.Scale = GameUtils.getRandomScaleVector() * 0.2f; instance.Position = GameUtils.getRandomPositionVector(); instance.Transform = Matrix.Scaling(instance.Scale) * Matrix.Translation(instance.Position); instance.updateBoundingBox(); //instance.AlphaBlendEnable = true; InteractiveObject interactiveObject = new InteractiveObject("Rock", 1, instance, InteractiveObject.Materials.Rock, InteractiveObject.ObjectTypes.Rock); interactiveObject.drops.Add(InventoryObject.ObjectTypes.Rock); Objetos.Add(interactiveObject); } }
public bool Salvar(Cliente cliente, bool Editando) { if (cliente == null) { return(false); } if (Editando) { for (int i = 0; i < Objetos.Count; i++) { if (Objetos[i].Equals(cliente)) { Objetos[i] = cliente; } } } else { Objetos.Add(cliente); } return(true); }
public bool Salvar(Categoria categoria, bool Editando) { if (categoria == null) { return(false); } if (Editando) { for (int i = 0; i < Objetos.Count; i++) { if (Objetos[i].Equals(categoria)) { Objetos[i] = categoria; } } } else { Objetos.Add(categoria); } return(true); }