/// <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);
            }
        }
Esempio n. 2
0
        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);
            }
        }
Esempio n. 4
0
 public void AddObjeto(Objeto objeto)
 {
     if (objeto.Valid)
     {
         Objetos.Add(objeto);
     }
 }
Esempio n. 5
0
        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);
            }
        }
Esempio n. 6
0
        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);
        }
Esempio n. 7
0
        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);
        }
Esempio n. 10
0
        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);
        }