// metodos privados // inicializar o jogador private void InicializePlayer() { // define a forma do jogador para Aike char_info_.shape = PlayerShape.Aike; // instancia o jogador e a camera no mundo de acordo com o primeiro spawnPoint // guarda a refenrecia para o controlador ao instanciar char_system_ = GameObject.Instantiate(PlayerObject, StartSpawn.position, StartSpawn.rotation). GetComponent <CharacterSystem>(); // guarda tambem a referencia para o transform do jogador char_transform_ = char_system_.transform; // define valores iniciais para o estado do jogador para evitar que seja transportado de outras cenas char_system_.CanGoArif(true); // torna o jogador activo tambem char_system_.RespawnPlayer(); // confirma o valor da escala de tempo char_system_.game_settings_.SetTimeMultiplier(1f); // inicia a camera, guardando referencia para o controlador da camera cam_controller_ = GameObject.Instantiate(CameraControllerObject, StartSpawn.position, StartSpawn.rotation). GetComponent <CameraController>(); // define o volume do listenner char_system_.game_settings_.SetListenerVolume(); // apos o jogador estar iniciado, indica ao Fenrir a existencia deste fenrir_behaviour.ActivateFenrir(char_transform_); }
private CameraController cam_controller; // referencia para o controlador da camera // referencias para a camera // on awake private void Awake() { // define a forma do jogador como Aike char_info.shape = PlayerShape.Aike; // inicia o jogador e a camera no mundo de acordo com o spawn point // guarda referencia para o controlador do jogador char_system_ = GameObject.Instantiate(PlayerObject, Spawner_point.position, Spawner_point.rotation). GetComponent <CharacterSystem>(); // guarda referencia para o transform do jogador char_transform_ = char_system_.transform; // indica que o jogador pode trocar de forma char_system_.CanGoArif(true); // torna o jogador vivo char_system_.RespawnPlayer(); // confirma a escala do tempo para o jogador char_system_.game_settings_.SetTimeMultiplier(1f); // inicia a camera cam_controller = GameObject.Instantiate(CameraControllerObject, Spawner_point.position, Spawner_point.rotation).GetComponent <CameraController>(); // defini volume dos listenners char_system_.game_settings_.SetListenerVolume(); // determinar qual portal está aberto ConfirmPortals(); }
// callback chamado para por de novo o jogador no mapa public void RespawnCallBack() { // remove o registo respawn_portal_manager.UnRegistManager(this); // para o respawn, escolhe um ponto de spawn aleatorio dos pontos fornecidos // define a posiçao para o jogador com base no valor // determina um valor aleatorio dentro do alcançe para os pontos fornecidos var randomVal = Random.Range(0, SpawnPoints.Length); // define que o jogador pode alterar entre as formas char_system_.CanGoArif(true); // confirma a escala do tempo para o jogador char_system_.game_settings_.SetTimeMultiplier(1f); // com base no valor determinado, poem o jogador na posiçao char_system_.RespawnPlayer(SpawnPoints[randomVal].position, SpawnPoints[randomVal].rotation); // define a posiçao da camera cam_controller_.SetCamTransfor(SpawnPoints[randomVal].position, SpawnPoints[randomVal].rotation); }
// metodos privado // iniciar o jogador no mundo private void InstantiatePlayer() { // define a forma para o jogador char_infor_.shape = PlayerShape.Aike; // instancia o jogador e a camera no mundo de acordo com o spawnPoint // guarda a referencia para o controlador ao iinstanciar char_system_ = GameObject.Instantiate(player_obj_, spawn_position_.position, Quaternion.identity). GetComponent <CharacterSystem>(); // define que o jogador nao pode trocar de forma char_system_.CanGoArif(false); // confirma que o jogador se encontra activo, nao definindo uma posiçao char_system_.RespawnPlayer(); // confirma tambem o valor de escala de tempo para o jogador char_system_.game_settings_.SetTimeMultiplier(1f); // inica a camera, guardando referencia para o controlador da mesma cam_controller_ = GameObject.Instantiate(camera_obj_, spawn_position_.position, Quaternion.identity). GetComponent <CameraController>(); // define o volume dos listener char_system_.game_settings_.SetListenerVolume(); }