Example #1
0
        private void Player()
        {
            TgcMp3Player player = new TgcMp3Player();

            //if ((bool)GuiController.Instance.Modifiers["Musica"])
            {
                if (player.getStatus() == TgcMp3Player.States.Open)
                {
                    //Reproducir MP3
                    //FIXME
                    //player.play(true);
                }
                if (player.getStatus() == TgcMp3Player.States.Stopped)
                {
                    //Parar y reproducir MP3
                    player.closeFile();
                    player.play(true);
                }
            }

            /*else
             * {
             *  if (player.getStatus() == TgcMp3Player.States.Playing)
             *  {
             *      //Parar el MP3
             *      player.stop();
             *  }
             * }*/
        }
Example #2
0
        public override void render(float elapsedTime)
        {
            Device d3dDevice = GuiController.Instance.D3dDevice;

            //Ver si cambio el MP3
            string filePath = (string)GuiController.Instance.Modifiers["MP3-File"];

            loadMp3(filePath);


            //Contro del reproductor por teclado
            TgcMp3Player player = GuiController.Instance.Mp3Player;

            TgcMp3Player.States currentState = player.getStatus();
            if (GuiController.Instance.D3dInput.keyPressed(Microsoft.DirectX.DirectInput.Key.Y))
            {
                if (currentState == TgcMp3Player.States.Open)
                {
                    //Reproducir MP3
                    player.play(true);
                }
                if (currentState == TgcMp3Player.States.Stopped)
                {
                    //Parar y reproducir MP3
                    player.closeFile();
                    player.play(true);
                }
            }
            else if (GuiController.Instance.D3dInput.keyPressed(Microsoft.DirectX.DirectInput.Key.U))
            {
                if (currentState == TgcMp3Player.States.Playing)
                {
                    //Pausar el MP3
                    player.pause();
                }
            }
            else if (GuiController.Instance.D3dInput.keyPressed(Microsoft.DirectX.DirectInput.Key.I))
            {
                if (currentState == TgcMp3Player.States.Paused)
                {
                    //Resumir la ejecución del MP3
                    player.resume();
                }
            }
            else if (GuiController.Instance.D3dInput.keyPressed(Microsoft.DirectX.DirectInput.Key.O))
            {
                if (currentState == TgcMp3Player.States.Playing)
                {
                    //Parar el MP3
                    player.stop();
                }
            }


            //Render texto
            currentMusicText.render();
            instruccionesText.render();
        }
Example #3
0
 private void reproducirSonido(string nombre)
 {
     mp3Player.FileName = MediaDir + nombre;
     if (mp3Player.getStatus() == TgcMp3Player.States.Open)
     {
         //Reproducir MP3
         mp3Player.play(true);
     }
 }
Example #4
0
        public override void Render()
        {
            PreRender();

            //Ver si cambio el MP3
            var filePath = (string)Modifiers["MP3-File"];

            loadMp3(filePath);

            //Contro del reproductor por teclado
            var currentState = mp3Player.getStatus();

            if (Input.keyPressed(Key.Y))
            {
                if (currentState == TgcMp3Player.States.Open)
                {
                    //Reproducir MP3
                    mp3Player.play(true);
                }
                if (currentState == TgcMp3Player.States.Stopped)
                {
                    //Parar y reproducir MP3
                    mp3Player.closeFile();
                    mp3Player.play(true);
                }
            }
            else if (Input.keyPressed(Key.U))
            {
                if (currentState == TgcMp3Player.States.Playing)
                {
                    //Pausar el MP3
                    mp3Player.pause();
                }
            }
            else if (Input.keyPressed(Key.I))
            {
                if (currentState == TgcMp3Player.States.Paused)
                {
                    //Resumir la ejecución del MP3
                    mp3Player.resume();
                }
            }
            else if (Input.keyPressed(Key.O))
            {
                if (currentState == TgcMp3Player.States.Playing)
                {
                    //Parar el MP3
                    mp3Player.stop();
                }
            }

            //Render texto
            currentMusicText.render();
            instruccionesText.render();

            PostRender();
        }
        public override void Update()
        {
            PreUpdate();

            //movimientoCaja = TGCMatrix.Identity;

            //// Agrego a la lista de meshes colisionables tipo caja, todas las cosas del pedazo de escenario donde estoy contra las que puedo colisionar.
            //caja1Mesh = new MeshTipoCaja(caja1);

            //meshesColisionables = new ArrayList();

            //meshesColisionables.Add(caja1Mesh);
            ////

            personaje.Update();

            //escenarioActual.Update();
            actualizarEscenario();

            escenarioActual.AplicarGravedad();

            foreach (Escenario escenario in escenarios.Values)
            {
                escenario.Update();
            }


            escenarioActual.Colisiones();

            if (Input.keyPressed(Key.Q))
            {
                BoundingBox = !BoundingBox;
            }

            if (Input.keyPressed(Key.M))
            {
                muteado = !muteado;
            }

            if (muteado)
            {
                cancionPpal.pause();
            }
            else
            {
                cancionPpal.resume();
            }

            if (cancionPpal.getStatus() != TgcMp3Player.States.Playing && !muteado)
            {
                cancionPpal.closeFile();
                cancionPpal.play(true);
            }

            PostUpdate();
        }
Example #6
0
        public void startSound()
        {
            var currentState = mp3Player.getStatus();

            if (currentState == TgcMp3Player.States.Playing)
            {
                if (currentFile != currentPlaying)
                {
                    //Parar y reproducir MP3
                    mp3Player.closeFile();
                    mp3Player.play(true);
                    currentPlaying = mp3Player.FileName;
                }
            }
            else
            {
                mp3Player.play(true);
                currentPlaying = mp3Player.FileName;
            }
        }
Example #7
0
 //Ver si cambio el MP3
 public void verSiCambioMP3()
 {
     if (empezado == false)
     {
         loadMp3(archivo);
         reproducir();
         empezado = true;
         return;
     }
     TgcMp3Player.States currentState = player.getStatus();
     if (currentState == TgcMp3Player.States.Playing)
     {
         //Pausar el MP3
         player.pause();
     }
     if (currentState == TgcMp3Player.States.Paused)
     {
         //Resumir la ejecución del MP3
         player.resume();
     }
 }
Example #8
0
        private void ReproducirMusica()
        {
            var player       = new TgcMp3Player();
            var currentState = player.getStatus();

            if (currentState == TgcMp3Player.States.Open || currentState == TgcMp3Player.States.Stopped)
            {
                player.closeFile();
                player.FileName = musicas[FuncionesMatematicas.Instance.NumeroAleatorioIntEntre(0, musicas.Count - 1)];
                player.play(false);
            }
        }
Example #9
0
        //reproduce un tema previamente cargado, sino no pasa nada
        public void playMusica()
        {
            TgcMp3Player player = GuiController.Instance.Mp3Player;

            TgcMp3Player.States currentState = player.getStatus();

            if (currentState == TgcMp3Player.States.Open)
            {
                //Reproducir MP3
                player.play(true);
            }
        }
Example #10
0
        public void render()
        {
            Device d3dDevice = GuiController.Instance.D3dDevice;

            TgcMp3Player player = GuiController.Instance.Mp3Player;

            TgcMp3Player.States currentState = player.getStatus();
            if (currentState == TgcMp3Player.States.Open)
            {
                //Reproducir MP3
                player.play(true);
            }
        }
Example #11
0
        public override void Update()
        {
            //Ver si cambio el MP3
            var filePath = mp3FileModifier.Value;

            loadMp3(filePath);

            //Contro del reproductor por teclado
            var currentState = mp3Player.getStatus();

            if (Input.keyPressed(Key.Y))
            {
                if (currentState == TgcMp3Player.States.Open)
                {
                    //Reproducir MP3
                    mp3Player.play(true);
                }
                if (currentState == TgcMp3Player.States.Stopped)
                {
                    //Parar y reproducir MP3
                    mp3Player.closeFile();
                    mp3Player.play(true);
                }
            }
            else if (Input.keyPressed(Key.U))
            {
                if (currentState == TgcMp3Player.States.Playing)
                {
                    //Pausar el MP3
                    mp3Player.pause();
                }
            }
            else if (Input.keyPressed(Key.I))
            {
                if (currentState == TgcMp3Player.States.Paused)
                {
                    //Resumir la ejecución del MP3
                    mp3Player.resume();
                }
            }
            else if (Input.keyPressed(Key.O))
            {
                if (currentState == TgcMp3Player.States.Playing)
                {
                    //Parar el MP3
                    mp3Player.stop();
                }
            }
        }
Example #12
0
        public void muteUnmute()
        {
            TgcMp3Player player = GuiController.Instance.Mp3Player;

            TgcMp3Player.States currentState = player.getStatus();

            if (currentState == TgcMp3Player.States.Playing)
            {
                //Pausar el MP3
                player.pause();
                return;
            }
            else if (currentState == TgcMp3Player.States.Paused)
            {
                //Resumir la ejecución del MP3
                player.resume();
            }
        }
        /// <summary>
        ///     Arranca a ejecutar un ejemplo.
        ///     Para el ejemplo anterior, si hay alguno.
        /// </summary>
        public void ExecuteModel()
        {
            if (mp3Player.getStatus() == States.Playing)
            {
                mp3Player.closeFile();
            }

            //Ejecutar Init
            try
            {
                Model.ResetDefaultConfig();
                Model.DirectSound = DirectSound;
                Model.Input       = Input;
                Model.Init();
                panel3D.Focus();
            }
            catch (Exception e)
            {
                MessageBox.Show(e.Message, "Error en Init() del juego", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Example #14
0
        private void reproducirMusica(TgcD3dInput Input)
        {
            var estadoActual = reproductorMp3.getStatus();

            if (Input.keyPressed(Key.M))
            {
                if (estadoActual == TgcMp3Player.States.Open)
                {
                    //Reproducir MP3
                    reproductorMp3.play(true);
                }
                if (estadoActual == TgcMp3Player.States.Stopped)
                {
                    //Parar y reproducir MP3
                    reproductorMp3.closeFile();
                    reproductorMp3.play(true);
                }
                if (estadoActual == TgcMp3Player.States.Playing)
                {
                    //Parar el MP3
                    reproductorMp3.stop();
                }
            }
        }
        public override void init()
        {
            Device d3dDevice = GuiController.Instance.D3dDevice;

            time = new DateTime();
            //GuiController.Instance.D3dDevice.RenderState.ReferenceAlpha =255;
            TgcTexture texe = TgcTexture.createTexture(d3dDevice, "mitex1", GuiController.Instance.AlumnoEjemplosMediaDir + "Grupo18\\granito00.jpg");

            TgcTexture texe1 = TgcTexture.createTexture(d3dDevice, "mitex1", GuiController.Instance.AlumnoEjemplosMediaDir + "Grupo18\\nubes.jpg");
            Vector3    cen   = new Vector3(1, 1, 220);
            Vector3    boxSi = new Vector3(2000, 2000, 2000);

            cajaporon = BoundingBoxExtendida.fromSize(cen, boxSi, texe1);


            TgcSceneLoader loader = new TgcSceneLoader();


            boxes = new List <BoundingBoxExtendida>();
            int a = 0;


            Vector3 boxSize = new Vector3(25, 25, 25);

            //Genera la aleatoriedad
            this.generarAleatorio();

            for (int i = 0; i < 4; i++)
            {
                for (int j = 0; j < 4; j++)
                {
                    for (int k = 0; k < 4; k++)
                    {
                        if (!((k == 1 || k == 2) && ((i > 0 && i < 3) && (j > 0 && j < 3))))
                        {
                            TgcTexture texture = TgcTexture.createTexture(d3dDevice, "mitex" + i + j + k, GuiController.Instance.AlumnoEjemplosMediaDir + "Grupo18\\granito00.jpg");

                            Vector3 center = new Vector3((boxSize.X + boxSize.X / 2) * i, (boxSize.Y + boxSize.Y / 2) * j, (k * 35) + 220);

                            BoundingBoxExtendida box1 = BoundingBoxExtendida.fromSize(center, boxSize, texture);

                            box1.setName("imagen" + imagenes[a]);
                            a++;
                            boxes.Add(box1);
                        }
                    }
                }
            }

            //Iniciarlizar PickingRay
            pickingRay = new TgcPickingRay();

            GuiController.Instance.RotCamera.CameraDistance = 250;
            GuiController.Instance.RotCamera.CameraCenter   = new Vector3(56.25f, 56.25f, 272.2f);

            //Crear caja para marcar en que lugar hubo colision
            collisionPointMesh = TgcBox.fromSize(new Vector3(25, 25, 25), Color.Red);
            selected           = false;

            //Crear caja para indicar ubicacion de la luz
            ligtBox = TgcBox.fromSize(new Vector3(10, 10, 10), Color.Yellow);

            aciertosText          = new TgcText2d();
            aciertosText.Text     = "Aciertos:";
            aciertosText.Position = new Point(340, 10);
            aciertosText.Color    = Color.Red;
            aciertosText.changeFont(new System.Drawing.Font(FontFamily.GenericMonospace, 20, FontStyle.Bold));

            fracazosText          = new TgcText2d();
            fracazosText.Text     = "Fracasos:";
            fracazosText.Position = new Point(340, 90);
            fracazosText.Color    = Color.Red;
            fracazosText.changeFont(new System.Drawing.Font(FontFamily.GenericMonospace, 20, FontStyle.Bold));

            puntuacionAciertosText          = new TgcText2d();
            puntuacionAciertosText.Text     = "0";
            puntuacionAciertosText.Position = new Point(340, 40);
            puntuacionAciertosText.Color    = Color.Red;
            puntuacionAciertosText.changeFont(new System.Drawing.Font(FontFamily.GenericMonospace, 40, FontStyle.Bold));

            puntuacionFracazosText          = new TgcText2d();
            puntuacionFracazosText.Text     = "0";
            puntuacionFracazosText.Position = new Point(340, 110);
            puntuacionFracazosText.Color    = Color.Red;
            puntuacionFracazosText.changeFont(new System.Drawing.Font(FontFamily.GenericMonospace, 40, FontStyle.Bold));

            finalText          = new TgcText2d();
            finalText.Text     = "FIN DEL JUEGO";
            finalText.Position = new Point(0, 30);
            finalText.Color    = Color.Red;
            finalText.changeFont(new System.Drawing.Font(FontFamily.GenericMonospace, 70, FontStyle.Bold));

            finalText1          = new TgcText2d();
            finalText1.Position = new Point(0, 120);
            finalText1.Color    = Color.Red;
            finalText1.changeFont(new System.Drawing.Font(FontFamily.GenericMonospace, 60, FontStyle.Bold));

            tiempoTranscurrido          = new TgcText2d();
            tiempoTranscurrido.Position = new Point(0, 360);
            tiempoTranscurrido.Color    = Color.Red;
            tiempoTranscurrido.changeFont(new System.Drawing.Font(FontFamily.GenericMonospace, 60, FontStyle.Bold));

            this.loadMp3(GuiController.Instance.AlumnoEjemplosMediaDir + "Grupo18\\dalePlay.mp3");
            TgcMp3Player player = GuiController.Instance.Mp3Player;

            TgcMp3Player.States currentState = player.getStatus();
            player.play(true);
            GuiController.Instance.Modifiers.addButton("Reload", "Reload", new EventHandler(Reload_ButtonClick));


            //Crear Sprite animado
            animatedSprite = new MySprite(
                GuiController.Instance.AlumnoEjemplosMediaDir + "Grupo18\\prueba2.png", //Textura de 256x256
                new Size(128, 128),                                                     //Tamaño de un frame (64x64px en este caso)
                16,                                                                     //Cantidad de frames, (son 16 de 64x64px)
                6                                                                       //Velocidad de animacion, en cuadros x segundo
                );

            //Ubicarlo centrado en la pantalla
            Size screenSize  = GuiController.Instance.Panel3d.Size;
            Size textureSize = animatedSprite.Sprite.Texture.Size;

            animatedSprite.Scaling     = new Vector2(4f, 4f);
            animatedSprite.Position    = new Vector2(screenSize.Width / 2 - textureSize.Width / 2, screenSize.Height / 2 - textureSize.Height / 2);
            animatedSprite.positionBkp = animatedSprite.Position;



            //Crear Sprite animado
            animatedSpriteTriste = new MySprite(
                GuiController.Instance.AlumnoEjemplosMediaDir + "Grupo18\\caritaTiste.png", //Textura de 256x256
                new Size(128, 128),                                                         //Tamaño de un frame (64x64px en este caso)
                16,                                                                         //Cantidad de frames, (son 16 de 64x64px)
                6                                                                           //Velocidad de animacion, en cuadros x segundo
                );

            animatedSpriteTriste.Scaling     = new Vector2(2f, 2f);
            animatedSpriteTriste.Position    = new Vector2(8, 5);
            animatedSpriteTriste.positionBkp = animatedSpriteTriste.Position;
        }
Example #16
0
        private void Player()
        {
            TgcMp3Player player = new TgcMp3Player();

            //if ((bool)GuiController.Instance.Modifiers["Musica"])
            {
                if (player.getStatus() == TgcMp3Player.States.Open)
                {
                    //Reproducir MP3
                    //FIXME
                    //player.play(true);
                }
                if (player.getStatus() == TgcMp3Player.States.Stopped)
                {
                    //Parar y reproducir MP3
                    player.closeFile();
                    player.play(true);
                }
            }
            /*else
            {
                if (player.getStatus() == TgcMp3Player.States.Playing)
                {
                    //Parar el MP3
                    player.stop();
                }
            }*/
        }
Example #17
0
        // <param name="elapsedTime">Tiempo en segundos transcurridos desde el último frame</param>
        public override void render(float elapsedTime)
        {
            Device d3dDevice = GuiController.Instance.D3dDevice;

            axisRotation += AXIS_ROTATION_SPEED * elapsedTime;
            float camaraY = (float)GuiController.Instance.Modifiers["camaraY"];
            float camaraZ = (float)GuiController.Instance.Modifiers["camaraZ"];

            camaraTerceraPersona.CambiarCamara(camaraY, camaraZ);
            //Obtener valor de UserVar (hay que castear)
            int valor = (int)GuiController.Instance.UserVars.getValue("variablePrueba");

            #region

            //Radio de la nave
            string filePath = (string)GuiController.Instance.Modifiers["MP3-File"];
            LoadMp3(filePath);

            TgcMp3Player        player       = GuiController.Instance.Mp3Player;
            TgcMp3Player.States currentState = player.getStatus();

            if (GuiController.Instance.D3dInput.keyPressed(Microsoft.DirectX.DirectInput.Key.Y))
            {
                if (currentState == TgcMp3Player.States.Open)
                {
                    //Reproducir MP3
                    player.play(true);
                }
                if (currentState == TgcMp3Player.States.Stopped)
                {
                    //Parar y reproducir MP3
                    player.closeFile();
                    player.play(true);
                }
            }
            else if (GuiController.Instance.D3dInput.keyPressed(Microsoft.DirectX.DirectInput.Key.O))
            {
                if (currentState == TgcMp3Player.States.Playing)
                {
                    //Parar el MP3
                    player.stop();
                }
            }

            #endregion

            //Cargamos el Render Targer al cual se va a dibujar la escena 3D. Antes nos guardamos el surface original
            //En vez de dibujar a la pantalla, dibujamos a un buffer auxiliar, nuestro Render Target.
            pOldRT = d3dDevice.GetRenderTarget(0);
            Surface pSurf = renderTarget2D.GetSurfaceLevel(0);
            d3dDevice.SetRenderTarget(0, pSurf);
            d3dDevice.Clear(ClearFlags.Target | ClearFlags.ZBuffer, Color.Black, 1.0f, 0);


            //Dibujamos la escena comun, pero en vez de a la pantalla al Render Target
            drawSceneToRenderTarget(d3dDevice, elapsedTime);

            //Liberar memoria de surface de Render Target
            pSurf.Dispose();

            //Si quisieramos ver que se dibujo, podemos guardar el resultado a una textura en un archivo para debugear su resultado (ojo, es lento)
            //TextureLoader.Save(GuiController.Instance.ExamplesMediaDir + "Shaders\\render_target.bmp", ImageFileFormat.Bmp, renderTarget2D);


            //Ahora volvemos a restaurar el Render Target original (osea dibujar a la pantalla)
            d3dDevice.SetRenderTarget(0, pOldRT);


            //Luego tomamos lo dibujado antes y lo combinamos con una textura con efecto de alarma
            drawPostProcess(d3dDevice);

            nave.Renderizar(elapsedTime, obstaculos);
            NaveEnemiga1.MoverHaciaObjetivo(elapsedTime, nave.Modelo.Position);
            NaveEnemiga1.Renderizar(elapsedTime, obstaculos);


            #region Detectar Colisiones

            ColisionNave(elapsedTime);
            ColisionDisparos(elapsedTime);

            #endregion

            sol.BoundingBox.transform(sol.Transform);
            sol.Transform = TransformarSol(elapsedTime);
            GuiController.Instance.ThirdPersonCamera.Target = nave.Modelo.Position;
            //Limpiamos todas las transformaciones con la Matrix identidad
            sol.render();
            d3dDevice.Transform.World = Matrix.Identity;
            Universo.renderAll();
        }