//------------------------------------------------------------------------------------------------------------------ /* * METODO QUE SE EJECUTA REPETIDAMENTE CADA FOTOGRAMA DE LA EJECUCION */ void Update() { if (miPersonaje == null) { miPersonaje = GameObject.Find("miPersonaje"); //Si obtengo el personaje y es la primera vez que lo ejecuto, efectuo las acciones } else if (primeraEjecucion) { //Ejecutar una sola vez primeraEjecucion = false; //Obtener referencias movimiento = miPersonaje.GetComponent <Movimiento>(); controlesPantalla = miPersonaje.GetComponent <ControlesPantalla>(); aparienciaWalter = miPersonaje.GetComponent <AparienciaWalter>(); //Establecer ajustes controlesPantalla.setModo(infoPersistente.getModoControl()); controlesPantalla.setSensibilidad(infoPersistente.getSenApunt() / 2); movimiento.setSensibilidadMovi((infoPersistente.getSenMov() * 25) / 8); //Establecer Apariencia aparienciaWalter.establecerApariencia(infoPersistente.getAparienciaActiva()); } }
//------------------------------------------------------------------------------------------------------------------- /* * METODO PARA REGENERAR UN PERSONAJE CUANDO ESTE MUERE */ public void regenerar(int balas, int energia) { //En funcion del cliente que sea lo instanciaremos en un portal u otro if (PhotonNetwork.IsMasterClient) { jugCreado = Photon.Pun.PhotonNetwork.Instantiate(jugador.name, PortalJug1.position, Quaternion.identity, 0); } else { jugCreado = Photon.Pun.PhotonNetwork.Instantiate(jugador.name, PortalJug2.position, Quaternion.identity, 0); } //Establecer el estado inicial del jugador jugCreado.GetComponent <EstadoJugador>().setContEnergia(energia); jugCreado.GetComponent <EstadoJugador>().setNumBalas(balas); jugCreado.GetComponent <EstadoJugador>().setEstado(0); //Establecer ajustes jugCreado.GetComponent <ControlesPantalla>().setModo(infoPersistente.getModoControl()); jugCreado.GetComponent <ControlesPantalla>().setSensibilidad(infoPersistente.getSenApunt() / 2); jugCreado.GetComponent <Movimiento>().setSensibilidadMovi((infoPersistente.getSenMov() * 25) / 8); //Establecer Apariencia jugCreado.GetComponent <AparienciaWalter>().establecerApariencia(infoPersistente.getAparienciaActiva()); //Ejecutar animacion de abrir el portal miPortal.GetComponent <Animator>().SetTrigger("Abrir"); //Ejecutar animacion en el oponente pView.RPC("anim_RPC", Photon.Pun.RpcTarget.OthersBuffered, "Abrir"); abierto = true; }
//------------------------------------------------------------------------------------------------------------------ /* * METODO PARA ESTABLECER LA INTERFAZ CON LOS PARAMETROS ALMACENADOS EN FIREBASE */ public void obtenerAjustes() { if (infoPersistente == null) { infoPersistente = GameObject.Find("InfoPersistente").GetComponent <InfoPersistente>(); } //Establecer el valor de los slider sSenMov.value = infoPersistente.getSenMov(); sSenApunt.value = infoPersistente.getSenApunt(); //Establecer el boton de control adecuado if (infoPersistente.getModoControl()) { controlesModoB.transform.GetChild(0).gameObject.SetActive(false); controlesModoA.transform.GetChild(0).gameObject.SetActive(true); } else { controlesModoB.transform.GetChild(0).gameObject.SetActive(true); controlesModoA.transform.GetChild(0).gameObject.SetActive(false); } }