Esempio n. 1
0
        protected override void OnKeyDown(OpenTK.Input.KeyboardKeyEventArgs e)
        {
            // Console.Clear(); //TODO: não funciona.
            if (e.Key == Key.H)
            {
                Utilitario.AjudaTeclado();
            }
            else if (e.Key == Key.F1)
            {
                Utilitario.AjudaJogo();
            }
            else if (e.Key == Key.Escape)
            {
                Exit();
            }
            //--------------------------------------------------------------
            else if (e.Key == Key.Number9)
            {
                objetoSelecionado = null;             // desmacar objeto selecionado
            }
            else if (e.Key == Key.B)
            {
                bBoxDesenhar = !bBoxDesenhar; //FIXME: bBox não está sendo atualizada.
            }
            else if (e.Key == Key.Enter)
            {
                obj_Tabuleiro.enter();
            }
            else if (e.Key == Key.E)
            {
                Console.WriteLine("--- Objetos / Pontos: ");
                for (var i = 0; i < objetosLista.Count; i++)
                {
                    Console.WriteLine(objetosLista[i]);
                }
            }
            //--------------------------------------------------------------
            else if (e.Key == Key.X)
            {
                menuEixoSelecao = 'x';
            }
            else if (e.Key == Key.Y)
            {
                menuEixoSelecao = 'y';
            }
            else if (e.Key == Key.Z)
            {
                menuEixoSelecao = 'z';
            }
            else if (e.Key == Key.Minus)
            {
                deslocamento--;
            }
            else if (e.Key == Key.Plus)
            {
                deslocamento++;
            }
            else if (e.Key == Key.C)
            {
                menuSelecao = "[menu] C: Câmera";
            }
            else if (e.Key == Key.O)
            {
                menuSelecao = "[menu] O: Objeto";
            }

            // Menu: seleção
            else if (menuSelecao.Equals("[menu] C: Câmera"))
            {
                camera.MenuTecla(e.Key, menuEixoSelecao, deslocamento);
            }
            else if (menuSelecao.Equals("[menu] O: Objeto"))
            {
                if (objetoSelecionado != null)
                {
                    objetoSelecionado.MenuTecla(e.Key, menuEixoSelecao, deslocamento, bBoxDesenhar);
                }
                else
                {
                    Console.WriteLine(" ... Objeto NÃO selecionado.");
                }
            }

            else
            {
                Console.WriteLine(" __ Tecla não implementada.");
            }

            if (!(e.Key == Key.LShift)) //FIXME: não funciona.
            {
                Console.WriteLine("__ " + menuSelecao + "[" + deslocamento + "]");
            }
        }