private void ReproducirSonidoRandomEscenario() { if (personaje.estoyAdentro) { reproducirSonidoRandomIndoor(); } else { reproducirSonidoRandomOutdoor(); musicaFondoOutdoor.escucharSonidoActual(true); } reproducirSonidoRandomAmbiental(); }
public void Usar(Personaje personaje) { if (personaje.estoyAdentro) { personaje.TeletrasportarmeA(posicionSalida); personaje.setearSonidosOutdoor(); sonidoApertura.escucharSonidoActual(false); } else { personaje.TeletrasportarmeA(posicionEntrada); personaje.setearSonidosIndoor(); sonidoCierre.escucharSonidoActual(false); } personaje.estoyAdentro = !personaje.estoyAdentro; }
private void reproducirCaminata() { if (!sonidoDescanso) { if (this.suenoDerecha) { sonidoActualDer.escucharSonidoActual(false); this.suenoDerecha = false; sonidoDescanso = true; } else { sonidoActualIzq.escucharSonidoActual(false); this.suenoDerecha = true; sonidoDescanso = true; } } else { sonidoDescanso = false; } }
public override void Update() { PreUpdate(); if (!estoyJugando) { estoyJugando = Input.keyDown(Key.Space) && !estoyEnElMenu; if (estoyJugando) { sonidoBarra = new Sonido("AllAroundYou.wav", false); var sonidoStart = new Sonido("auto, abrir puerta.wav", -3000, false); sonidoStart.escucharSonidoActual(false); } } else { this.musicaMenu.DetenerSonido(); UpdateGame(); } PostUpdate(); }
private void InteraccionMonster() { if (!personaje.tieneLuz && !personaje.estoyEscondido && personaje.tiempoSinLuz > GameModel.TiempoSinAdvertencia) { this.renderizado = monsterBlur; if (personaje.tiempoSinLuz == GameModel.TiempoDeAdvertencia) { var posicion = personaje.puntoDemira(personaje.anguloAbsolutoEnY, personaje.anguloAbsolutoEnX); var nuevaPosicion = new TGCVector3(posicion.X, -350, posicion.Z); var delta = new TGCVector3(1000, 0, 1000); if (nuevaPosicion.X > 0) { delta = new TGCVector3(-1000, 0, 1000); } if (nuevaPosicion.Z > 0) { delta = new TGCVector3(delta.X, 0, -1000); } nuevaPosicion += delta; monster.InstanciarMonster(personaje, nuevaPosicion, monstruoActual); //escenario.tgcScene.Meshes.Add(monster.ghost); //monster.DisposeMonster(); monster.reproducirSonidoRandom(); estatica.escucharSonidoActual(true); personaje.viAlMonster = true; } if (personaje.tiempoSinLuz == GameModel.TiempoDeGameOver) { perdi = true; tiempoDeRotacion = 0; monster.DisposeMonster(); //El monster aparece detrás del personaje var anguloDeRotacion = FastMath.PI; var posicion = personaje.puntoDemira(personaje.anguloAbsolutoEnY + anguloDeRotacion, personaje.anguloAbsolutoEnX); var nuevaPosicion = new TGCVector3(posicion.X + 300, -350, posicion.Z + 300); monster.InstanciarMonster(personaje, nuevaPosicion, monstruoActual); //escenario.tgcScene.Meshes.Add(unBicho.ghost); personaje.LockMouse = false; //escenario.tgcScene.Meshes.Add(monster.ghost); var newTarget = new TGCVector3(nuevaPosicion.X, nuevaPosicion.Y + 350, nuevaPosicion.Z); personaje.SetCamera(personaje.eye, newTarget); monster.ReproducirSonidoGameOver(); //personaje.GameOver(this); } if (tiempoDeRotacion > 6 && personaje.tiempoSinLuz > GameModel.TiempoDeGameOver) { personaje.GameOver(this); } tiempoDeRotacion += ElapsedTime; } else { renderizado = this.sombras; } }