public PantallaInicio() { //Alto y ancho total de la pantalla float screenHeigth = Globales.getInstance().getAltoPantalla(); float screenWidth = Globales.getInstance().getAnchoPantalla(); //Coeficientes para la posicion relativa de las fotos de Mario y Luigi float xrelatMario = 0.1112f; float yrelatAmbos = 0.38f; float xrelatLuigi = 0.5631f; //Coeficientes absolutos para el escalado de Mario y Luigi float xrelat = 0.266f; float yrelat = 0.5f; //Coeficientes que regulan el tamaño especifico de cada imagen. float relatMarioX = xrelat * screenWidth / 480; //Los denominadores son los tamaños de alto y ancho de la imagen. float relatMarioY = yrelat * screenHeigth / 480; float relatRecux = 0.2904f * screenWidth / 500; float relatRecuy = 0.5510f * screenHeigth / 500; float relatMKx = 0.18f * screenWidth / 500; float relatMKy = 0.25f * screenHeigth / 500; float relatInicx = 0.2f * screenWidth / 500; float relatInicy = 0.5f * screenHeigth / 500; //Se cargan las imágenes que necesita la pantalla, el coso que carga los meshes y el que uso para captar el teclado. mario = new Imagen(GuiController.Instance.AlumnoEjemplosMediaDir + "LosBorbotones\\personajes\\mario.jpg"); mario.setPosicion(new Vector2(xrelatMario * screenWidth, yrelatAmbos * screenHeigth)); mario.setEscala(new Vector2(relatMarioX, relatMarioY)); luigi = new Imagen(GuiController.Instance.AlumnoEjemplosMediaDir + "LosBorbotones\\personajes\\luigi.jpg"); luigi.setPosicion(new Vector2(xrelatLuigi * screenWidth, yrelatAmbos * screenHeigth));//500,180 luigi.setEscala(new Vector2(relatMarioX, relatMarioY)); recuadro = new Imagen(GuiController.Instance.AlumnoEjemplosMediaDir + "LosBorbotones\\otros\\recuadro.png"); recuadro.setPosicion(0.95f*mario.getPosition()); recuadro.setEscala(new Vector2(relatRecux,relatRecuy)); //MARIO KART marioKart = new Imagen(GuiController.Instance.AlumnoEjemplosMediaDir + "LosBorbotones\\frases\\D.png"); marioKart.setPosicion(new Vector2(0.1345f*screenWidth, 0.05f*screenWidth)); marioKart.setEscala(new Vector2(relatMKx,relatMKy)); //"PRESIONE LA J PARA EMPEZAR A JUGAR" iniciar = new Imagen(GuiController.Instance.AlumnoEjemplosMediaDir + "LosBorbotones\\frases\\P.png"); iniciar.setPosicion(new Vector2(0.9f*marioKart.getPosition().X, 1.045f*marioKart.getPosition().Y )); iniciar.setEscala(new Vector2(relatInicx, relatInicy)); //MENSAJE CONSOLA GuiController.Instance.Logger.log(" [WASD] Controles Vehículo " + Environment.NewLine + " [M] Música On/Off" + Environment.NewLine + " [R] Reset posición" + Environment.NewLine + " [B] Debug Mode (muestra OBBs y otros datos útiles)" + Environment.NewLine + " [I] Degreelessness Mode (modo Dios)" + Environment.NewLine + " [Q] Volver al menú principal"); entrada = GuiController.Instance.D3dInput; }
public PantallaGameOver() { gameOver = new Imagen(GuiController.Instance.AlumnoEjemplosMediaDir + "LosBorbotones\\GO.png"); gameOver.setPosicion(new Vector2(150, 150)); gameOver.setEscala(new Vector2(0.3f, 0.3f)); this.entrada = GuiController.Instance.D3dInput; /* mensaje = new TgcText2d(); mensaje.Text = "GAME OVER. Presione Q para volver a empezar"; mensaje.Color = Color.DarkRed; mensaje.Align = TgcText2d.TextAlign.CENTER; mensaje.Position = new Point(200, 200); mensaje.Size = new Size(600, 50); mensaje.changeFont(new System.Drawing.Font("TimesNewRoman", 25, FontStyle.Bold));*/ }
public PantallaFinalizacion(int ganadorOPerdedor) { this.entrada = GuiController.Instance.D3dInput; float screenHeigth = Globales.getInstance().getAltoPantalla(); float screenWidth = Globales.getInstance().getAnchoPantalla(); float cx = 0.5f * screenWidth / 1500; float cy = 0.4f* screenHeigth / 500; float cvx = 0.65f * screenWidth / 1500; float cvy = 0.5f * screenHeigth / 500; if (ganadorOPerdedor == 0) { gameOver = new Imagen(GuiController.Instance.AlumnoEjemplosMediaDir + "LosBorbotones\\frases\\GO.png"); gameOver.setPosicion(new Vector2(0.15f * screenWidth, 0.2f* screenHeigth)); gameOver.setEscala(new Vector2(cx, cy)); bandera=false; /*mensaje.Text = "GAME OVER. Presione Q para volver a intentar"; mensaje.Color = Color.DarkRed;*/ } else { ganaste = new Imagen(GuiController.Instance.AlumnoEjemplosMediaDir + "LosBorbotones\\frases\\ganaste.png"); //ganaste.setEscala(new Vector2(cx, cy)); ganaste.setEscalarMaximo(); ganaste.setCentrarAncho(0.2f * screenHeigth); bandera=true; /*mensaje.Text = "Ganaste! Presione Q para volver a jugar"; mensaje.Color = Color.Green;*/ } volverAEmpezar = new Imagen(GuiController.Instance.AlumnoEjemplosMediaDir + "LosBorbotones\\frases\\Q.png"); volverAEmpezar.setPosicion(new Vector2(0.1f * screenWidth , 0.35f * screenHeigth)); volverAEmpezar.setEscala(new Vector2(cvx, cvy)); }
public PantallaJuego(Auto autito) { /*En PantallaInicio le paso a Pantalla juego con qué auto jugar. Acá lo asigno a la pantalla, cargo el coso que capta el teclado, creo el Nivel1 y lo pongo en la lista de renderizables, para que sepa con qué escenario cargarse */ this.auto = autito; auto.mesh.move(new Vector3(0, 0, -3100)); auto.mesh.rotateY(-1.57f); this.entrada = GuiController.Instance.D3dInput; this.nivel = EjemploAlumno.getInstance().getNiveles(0); //Barrita de vida vida = new Imagen(GuiController.Instance.AlumnoEjemplosMediaDir + "LosBorbotones\\vidaPersonaje\\vida.jpg"); barra = new Imagen(GuiController.Instance.AlumnoEjemplosMediaDir + "LosBorbotones\\vidaPersonaje\\fondobarra.png"); barra2 = new Imagen(GuiController.Instance.AlumnoEjemplosMediaDir + "LosBorbotones\\vidaPersonaje\\fondobarra2.png"); vida.setEscala(escalaInicial); barra.setEscala(new Vector2(6.81f, 1f)); barra2.setEscala(new Vector2(6.81f, 1f)); Vector2 posicionbarra = new Vector2(10, 5); vida.setPosicion(new Vector2(155f, 9.3f)); //CUENTA REGRESIVA uno = new Imagen(GuiController.Instance.AlumnoEjemplosMediaDir + "LosBorbotones\\cuentaRegresiva\\1.png"); uno.setCentrarYEscalar(); dos = new Imagen(GuiController.Instance.AlumnoEjemplosMediaDir + "LosBorbotones\\cuentaRegresiva\\2.png"); dos.setCentrarYEscalar(); tres = new Imagen(GuiController.Instance.AlumnoEjemplosMediaDir + "LosBorbotones\\cuentaRegresiva\\3.png"); tres.setCentrarYEscalar(); //Instrucción de misión del juego misionMario = new Imagen(GuiController.Instance.AlumnoEjemplosMediaDir + "LosBorbotones\\Mision\\m_mario.png"); misionMario.setCentrarYEscalar(); misionLuigi = new Imagen(GuiController.Instance.AlumnoEjemplosMediaDir + "LosBorbotones\\Mision\\m_luigi.png"); misionLuigi.setCentrarYEscalar(); // CAMARA TERCERA PERSONA GuiController.Instance.ThirdPersonCamera.Enable = true; GuiController.Instance.ThirdPersonCamera.resetValues(); Vector2 vectorCam = (Vector2)GuiController.Instance.Modifiers["AlturaCamara"]; GuiController.Instance.ThirdPersonCamera.setCamera(auto.mesh.Position, vectorCam.X, vectorCam.Y); GuiController.Instance.ThirdPersonCamera.rotateY(auto.mesh.Rotation.Y); //CARGAR MÚSICA. Musica track = new Musica("ramones.mp3"); this.musica = track; musica.playMusica(); musica.setVolume(35); Shared.debugMode = false; //Puntos de juego puntos = new TgcText2d(); puntos.Text = "0"; puntos.Color = Color.DarkRed; puntos.Align = TgcText2d.TextAlign.RIGHT; puntos.Position = new Point(30, 30); puntos.Size = new Size(100, 50); puntos.changeFont(new System.Drawing.Font("TimesNewRoman", 25, FontStyle.Bold)); //Reloxxxx this.horaInicio = DateTime.Now; this.tiempoRestante = new TgcText2d(); this.tiempoRestante.Text = "65"; this.tiempoRestante.Color = Color.Green; this.tiempoRestante.Align = TgcText2d.TextAlign.RIGHT; this.tiempoRestante.Position = new Point(300, 30); this.tiempoRestante.Size = new Size(100, 50); this.tiempoRestante.changeFont(new System.Drawing.Font("TimesNewRoman", 25, FontStyle.Bold)); this.comienzoNivel = true; //FLECHA NORMAL colision collisionNormalArrow = new TgcArrow(); collisionNormalArrow.BodyColor = Color.Blue; collisionNormalArrow.HeadColor = Color.Yellow; collisionNormalArrow.Thickness = 1.4f; collisionNormalArrow.HeadSize = new Vector2(10, 20); //FLECHA debug (la usamos para conocer posiciones donde querramos posicionar meshes) debugArrow = new TgcArrow(); debugArrow.BodyColor = Color.Purple; debugArrow.HeadColor = Color.Yellow; debugArrow.Thickness = 3f; debugArrow.HeadSize = new Vector2(10, 20); debugArrow.PStart = new Vector3(0, 400f, 0); debugArrow.PEnd = new Vector3(0, 10f, 0); debugArrow.updateValues(); //USER VARS GuiController.Instance.UserVars.addVar("DistMinima"); GuiController.Instance.UserVars.addVar("Velocidad"); GuiController.Instance.UserVars.addVar("Vida"); GuiController.Instance.UserVars.addVar("AngCol"); GuiController.Instance.UserVars.addVar("AngRot"); GuiController.Instance.UserVars.addVar("NormalObstaculoX"); GuiController.Instance.UserVars.addVar("NormalObstaculoZ"); }